2017-07-20 3 views
1

J'ai un modèle pdf de taille 230KB. Dans mon WebAPI pour plusieurs utilisateurs, prendre une copie de ce modèle en y poussant des données, et fusionner en utilisant la bibliothèque iTextsharp. Pour 1500 utilisateurs, la taille totale du fichier atteint 320 Mo.Réduire la taille du fichier PDF dans .Net

J'ai essayé d'utiliser BitMiracle, il a réduit la taille du fichier à 160 Mo. Mais c'est toujours un gros fichier.

J'ai utilisé acrobat Pro et utilisé Save as Other option Reduced Size PDF, il réduit la taille du fichier à 25 MB. Je veux réduire la taille du fichier à 25 Mo dans mon WebAPI en utilisant C# qui sera hébergé sur le serveur plus tard.

Comme l'utilisateur n'est pas censé éditer ce PDF, il le stockera simplement comme un enregistrement. Puis-je générer un fichier post-script, puis utiliser acrobat distiller pour diminuer la taille? Si oui, comment puis-je le faire? J'ai utilisé ghostscript.Net. A écrit cette méthode, il ne jette aucune erreur. Mais je suis incapable de trouver le chemin du fichier Postscript généré

public void convertToPs(string file) 
    { 
     try 
     { 
      Process printProcess = new Process(); 

      printProcess.StartInfo.FileName = file; 
      printProcess.StartInfo.Verb = "printto"; 
      printProcess.StartInfo.Arguments = "\"Ghostscript PDF\""; 
      printProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; 
      printProcess.StartInfo.CreateNoWindow = true; 
      printProcess.Start(); 

      // Wait until the PostScript file is created 
      try 
      { 
       printProcess.WaitForExit(); 
      } 
      catch (InvalidOperationException) { } 

      printProcess.Dispose(); 
     } 
     catch (Exception ex) 
     { 
      throw ex; 
     } 
    } 

S'il vous plaît aider

+1

Vous avez donc 1500 utilisateurs qui écrivent tous dans un seul fichier PDF? - Une solution est de ne pas faire ça. (c'est-à-dire en ne générant que sur demande) –

+0

En fait, le code WebAPI écrit au format PDF. Donc 1500 copies générées, fusionnées en un seul PDF en sortie – AkankshaGupta

+0

Quel type de données pousse dans le PDF? – Ben

Répondre

0

Le modèle a intégré les polices de caractères? Probablement la fusion ne combine pas ces polices. Si vous n'avez pas besoin de polices intégrées, vous pouvez les supprimer. Adobe fait du bon travail en combinant les polices incorporées.

Si vous voulez, vous pouvez m'envoyer un si gros document pdf, pour que je puisse comprendre, pourquoi ce fichier devient si gros. Je suis un développeur d'une bibliothèque PDF et obtenir le plus petit PDF est une solution intéressante sur laquelle je travaille.