Как конвертировать многослойный PDF в PNG, выбирая, в какие слои он будет экспортироваться. NET - PullRequest
1 голос
/ 22 апреля 2020

Мне нужно иметь возможность конвертировать многослойный PDF в PNG, но мне нужно иметь возможность указать, какой слой будет экспортироваться.

Файл PDF содержит много слоев, и большинство из них не видны. Существуют API, которые экспортируют только видимые слои и все остальные. Некоторые API позволяют мне изменять видимость слоя, но не все, которые позволяют этому подчиняться при конвертации.

Я уже пробовал много. Net API, и немногие из них позволяют мне это делать, но всегда с некоторыми проблемами , Я уже открыл несколько билетов в связанных компаниях, но понятия не имею, когда и когда они это исправят.

Я продолжаю искать какой-нибудь API, который мог бы выполнить эту работу, и я был бы признателен за любую помощь.

Следуйте API и инструментам, которые я уже тестировал:

FreeSpire.PDF : выполнил почти всю работу, но изображение конвертируется с большой пустой областью прозрачности вокруг основного изображения (I пока не могу это исправить).

Syncfusion.Pdf : Это тоже неплохой вариант, я могу получить слои, установить их видимость, но когда я экспортирую, экспортируются все слои (видимые и невидимые). Качество изображения также очень хорошее, и вокруг нет пустой области.

Dynami c .PDF : показался другим хорошим, но на самом деле имеет мало ресурсов и не может получать и работать со слоями и экспортировать только невидимые.

Apitron PDF Rasterizer : Прост в использовании, но невозможно получить доступ к слоям и экспортировать невидимые.

Pdf2Png : просто есть метод для преобразования, и он экспортирует видимые и не видимые слои, но качество результата файла плохое. Я пытался изменить несколько свойств, но качество все еще плохое. Он использует Ghostscript.

https://ezgif.com/ не преобразует невидимые слои.

https://pdf.io/pt/pdf2png/ не преобразует невидимые слои.

https://www.pdfpro.co/files не преобразует невидимые слои.

https://image.online-convert.com/ не преобразует невидимые слои.

https://www.zamzar.com/convert/png-to-pdf/ не преобразует невидимые слои.

https://easypdf.com/pt/pdf-em-png преобразует невидимые слои.

https://cloudconvert.com/pdf-to-png не преобразует невидимые слои.

1 Ответ

1 голос
/ 22 апреля 2020

Коммерческий SDK, выпущенный компанией, на которую я работаю, сделает это. При экспорте в PNG вы можете смешивать и сопоставлять слои в любом случае.

В этом примере (go в котором используется класс PDFDraw) показано рисование каждого слоя в своем собственном PNG.

https://www.pdftron.com/documentation/samples/dotnetcore/cs/PDFLayersTest

Из приведенного выше кода вы можете увидеть, как смешивать и сопоставлять, хотя, если вам нужно больше деталей, то, пожалуйста, уточните (пример PDF также поможет), какие именно слои Вы хотите экспортировать, и я могу предоставить этот код.

Чтобы опробовать пример и изменить его при необходимости, вы можете скачать SDK здесь: https://www.pdftron.com/documentation/windows/download/windows/

Там это и Windows. NET Framework SDK, и. NET Core SDK для Windows, macOS и Linux, которые можно загрузить по ссылке выше. Ищите образец Layers в загрузке SDK.

Ниже приведена онлайн-демонстрация, где вы можете увидеть интерактивное переключение слоев. Вы можете открыть любой PDF. Это тот же движок, что и на стороне сервера SDK.

https://www.pdftron.com/webviewer/demo/pdf-layers

...