Уменьшить размер PDF в.Net
У меня есть pdf
шаблон размером 230КБ. В моем WebAPI
для нескольких пользователей, принимая копию этого шаблона, передавая данные в него, и объединяя, используя iTextsharp
библиотека. Для 1500 пользователей общий размер файла достигает 320 МБ.
Я пытался с помощью BitMiracle
, он уменьшил размер файла до 160 МБ. Но это все еще большой файл.
я использовал acrobat Pro
и использовал Save as Other
вариант Reduced Size PDF
, он уменьшил размер файла до 25 МБ.
Я хочу уменьшить размер файла до 25 МБ в моем WebAPI с помощью C#
который будет размещен на сервере позже.
Поскольку пользователь не должен редактировать это PDF
Он просто сохранит это как запись. Могу ли я сгенерировать файл пост-скрипта, а затем использовать acrobat дистиллятор, чтобы уменьшить размер? Если да, как я могу это сделать?
я использую ghostscript.Net
, Написал этот метод, он не выдает никакой ошибки. Но я не могу найти путь к сгенерированному файлу PostScript
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;
}
}
Пожалуйста помоги
1 ответ
Есть ли в шаблоне встроенные шрифты? Возможно, объединение не объединяет эти шрифты. Если вам не нужны встроенные шрифты, вы можете удалить их. Adobe делает хорошую работу по объединению встроенных шрифтов.
Если вы хотите, вы можете отправить мне такой большой документ в формате PDF, чтобы я мог понять, почему этот файл становится таким большим. Я разработчик библиотеки PDF, и получение мельчайшего PDF - один из интересных вариантов использования, над которым я работаю.