Как представить pdfs, использующий C#

Из документации от React :

setState() не сразу мутирует this.state, а создает ожидающий переход состояния. Доступ к this.state после вызова этого метода может потенциально вернуть существующее значение.

blockquote>

. Если вы хотите, чтобы функция выполнялась после изменения состояния, передайте ее в поле setState, и вызовы могут быть собраны для повышения производительности. как обратный вызов.

this.setState({value: event.target.value}, function () {
    console.log(this.state.value);
});

48
задан Garth 6 February 2009 в 02:24
поделиться

7 ответов

Существует несколько других вариантов в случае, если Adobe ActiveX не то, что Вы ищете (так как Acrobat должен присутствовать на пользовательской машине, и Вы не можете поставить его сами).

Для создания предварительного просмотра PDF, сначала взгляните на некоторые другие обсуждения предмета на StackOverflow:

В последних двух, я говорю о нескольких вещах, которые можно попробовать:

  • можно получить коммерческий рендерер ( PDFViewForNet, PDFRasterizer.NET , ABCPDF, ActivePDF, XpdfRasterizer и другие в других ответах...).
    Большинство довольно дорого, хотя, особенно если все Вы заботитесь о, делает простой предварительный просмотр/миниатюры.

  • В дополнение к фрагменту кода Omar Shahine, существует статья CodeProject, которая показывает, как использовать Adobe ActiveX, но это может устареть, легко поврежденное новыми выпусками, и его законность темна (в основном, это хорошо для внутреннего пользования, но Вы не можете поставить его, и Вы не можете использовать его на сервере для создания изображений PDF).

  • Вы могли взглянуть на исходный код для [1 110] SumatraPDF, средство просмотра OpenSource PDF для окон.

  • существует также Poppler, механизм визуализации, который использует Xpdf в качестве механизма визуализации. Все они являются большими, но они потребуют, чтобы изрядное количество обязательства сделать заставило их работать и взаимодействовать через интерфейс с .NET, и они имеют тенденцию быть быть распределенными под GPL.

  • можно хотеть рассмотреть использование GhostScript как интерпретатор, потому что рендеринг страниц является довольно простым процессом.
    недостаток состоит в том, что Вы должны будете или повторно упаковать его для установки его с приложением или сделаете его предпосылкой (или по крайней мере часть процесса установки).
    Это не сложная задача, и это, конечно, легче, чем необходимость массажировать другие механизмы визуализации в сотрудничество с .NET.
    я сделал маленький проект, который Вы найдете на форумы Developer Express как вложение.
    остерегаться лицензионных требований для GhostScript через.
    , Если Вы не можете уехать с тем затем коммерческим программным обеспечением, вероятно, Ваш единственный выбор.

43
ответ дан Community 7 November 2019 в 22:20
поделиться

Вот мой ответ от другого вопроса.

Первый необходимо сослаться на Adobe Reader ActiveX Control

Библиотека типов Управления Браузером Adobe Acrobat 1.0

%programfiles& \Common Files\Adobe\Acrobat\ActiveX\AcroPDF.dll

Затем Вы просто перетаскиваете его в свой Windows Form от Панели инструментов.

И используют некоторый код как это для инициализации элемента управления ActiveX.

private void InitializeAdobe(string filePath)
{
    try
    {
        this.axAcroPDF1.LoadFile(filePath);
        this.axAcroPDF1.src = filePath;
        this.axAcroPDF1.setShowToolbar(false);
        this.axAcroPDF1.setView("FitH");
        this.axAcroPDF1.setLayoutMode("SinglePage");
        this.axAcroPDF1.Show();
    }
    catch (Exception ex)
    {
        throw;
    }
}

Удостоверяются, когда Ваши завершения Формы, что Вы избавляетесь от элемента управления ActiveX

this.axAcroPDF1.Dispose();
this.axAcroPDF1 = null;

иначе Acrobat, могли бы быть разбросаны, лежа.

12
ответ дан Omar Shahine 7 November 2019 в 22:20
поделиться

Используйте управление веб-браузером. Это требует, чтобы читатель Adobe был установлен, но скорее всего у Вас есть он так или иначе. Установите UrL управления к расположению файла.

1
ответ дан Sesh 7 November 2019 в 22:20
поделиться

Динамическое Средство просмотра PDF из программного обеспечения кита могло бы сделать то, что Вы ищете. Я использовал их программное обеспечение генератора, и было довольно довольно им.

http://www.dynamicpdf.com/

-1
ответ дан Paul Lefebvre 7 November 2019 в 22:20
поделиться

Самый легкий lib, который я использовал, Paolo Gios библиотека. Это в основном

Create GiosPDFDocument object
Create TextArea object
Add text, images, etc to TextArea object
Add TextArea object to PDFDocument object
Write to stream

, Это является большим учебным руководством для запущения Вас.

-1
ответ дан 7 November 2019 в 22:20
поделиться

Вы могли погуглить для компонент средства просмотра PDF и придумать больше, чем несколько хитов.

, Если Вы не должны действительно встраивать их в свое приложение, хотя - можно просто потребовать Acrobat Reader или FoxIt (или связать его, если оно выполняет их соответствующие условия лицензирования) и выходят из оболочки к нему. Это не столь прохладно, но это сделало задание бесплатно.

-3
ответ дан Mark Brackett 7 November 2019 в 22:20
поделиться

ABCpdf сделает это и много других вещей для Вас.

Не ony будет он представлять Ваш PDF ко множеству форматов (например, JPEG, GIF, PNG, TIFF, JPEG 2000; векторный EPS, SVG, Flash и PostScript), но это может также сделать так во множестве цветовых пространств (например, Серый, RGB, CMYK) и битовые глубины (например, 1, 8, 16 битов за компонент).

И это - просто часть из того, что это сделает!

Для получения дополнительной информации см.:

http://www.websupergoo.com/abcpdf-8.htm

О, и можно получить бесплатные лицензии по бесплатной схеме лицензии.

Существуют проблемы EULA с использованием Acrobat, чтобы сделать рендеринг PDF. Если Вы хотите спуститься, этот маршрут проверяют законность очень тщательно сначала.

2
ответ дан user81888 26 November 2019 в 18:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: