Question

Je comprends iTextSharp peut être utilisé pour convertir un document en pdf.

Mais d'abord, nous devons créer un document à partir de zéro en utilisant iTextSharp.text.Document, puis en ajoutant des éléments à ce document.

Et si j'ai un fichier doc existant, est-il possible de convertir ce document en PDF en utilisant iTextSharp.

, je veux aussi utiliser iTextSharp ou tout autre outil similaire qui peut effectuer suivant sur un fichier doc:

  1. manipulation de doc / docx / fichiers texte (comme le remplacement des espaces réservés par les valeurs DB), ainsi que
  2. les convertit en .pdf

Toute personne ayant idée à ce sujet, s'il vous plaît partager.

Merci!

Autres conseils

Aspose.Words est en effet une bonne solution, mais il ne propose pas la fidélité parfaite. Au moment de la rédaction, il a des problèmes avec des langues non romaines, formatages complexes tels que des éléments flottants et un certain nombre d'autres problèmes.

Vous pouvez jeter un oeil à cette

Vous pouvez utiliser la méthode existante de Microsoft.Office

 private Microsoft.Office.Interop.Word.ApplicationClass MSdoc;

    //Use for the parameter whose type are not known or say Missing
    object Unknown = Type.Missing;

  private void word2PDF(object Source, object Target)
    {   //Creating the instance of Word Application
      if (MSdoc == null)MSdoc = new Microsoft.Office.Interop.Word.ApplicationClass();

        try
        {
            MSdoc.Visible = false;
            MSdoc.Documents.Open(ref Source, ref Unknown,
                 ref Unknown, ref Unknown, ref Unknown,
                 ref Unknown, ref Unknown, ref Unknown,
                 ref Unknown, ref Unknown, ref Unknown,
                 ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown);
             MSdoc.Application.Visible = false;
              MSdoc.WindowState =   Microsoft.Office.Interop.Word.WdWindowState.wdWindowStateMinimize;

            object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF;

            MSdoc.ActiveDocument.SaveAs(ref Target, ref format,
                    ref Unknown, ref Unknown, ref Unknown,
                    ref Unknown, ref Unknown, ref Unknown,
                    ref Unknown, ref Unknown, ref Unknown,
                    ref Unknown, ref Unknown, ref Unknown,
                   ref Unknown, ref Unknown);
          }
           catch (Exception e)
          {
            MessageBox.Show(e.Message);
           }
         finally
          {
            if (MSdoc != null)
            {
                MSdoc.Documents.Close(ref Unknown, ref Unknown, ref Unknown);
                //WordDoc.Application.Quit(ref Unknown, ref Unknown, ref Unknown);
            }
            // for closing the application
            WordDoc.Quit(ref Unknown, ref Unknown, ref Unknown);
        }
    } 

Si vous ne se soucient pas de savoir si la mise en forme sera fidèle à ce que la Parole afficherait, il est l'impressionnant docx2tex qui convertit les fichiers Word 2007 docx aux documents en latex. Une fois en latex, vous avez beaucoup de pouvoir reformater programmitically le document et générer des PDF de lui.

Je dis plus sur l'utilité dans une réponse à tex.stackexchange .

J'ai la même question.
Après plusieurs jours d'essayer de trouver une solution, il semble docx4j , un outil basé sur Java, ou des imprimantes PDF comme PDFCreator , pourraient être parmi la solution libre.
Bien sûr, un simple outil commercial peut effectivement faire la tâche demandée.
Du côté de Microsoft, vous pouvez utiliser côté serveur compatible Sharepoint Word automation services , (consultez le 7 Juin 2016), ou Interop dans votre ordinateur local.
La suggéré conversion partielle à partie (DOC ou DOC à un langage intermédiaire, puis au format PDF), il semble, ce que les utilisateurs avaient dit sur les forums stackoverflow ou autres, pas possible, car résultat n'est pas prévu.

Pour la manipulation docx, vous devez utiliser la méthode Open XML natif. Télécharger Open XML SDK 2 de Microsoft.

Et vous pouvez convertir les fichiers docx en pdf avec cette bibliothèque payée: http: //www.subsystems .com / dpw.htm . C'est vraiment super.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top