<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Программа для чтения PDF, написанная целиком на JavaScript]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=14922&amp;type=atom" />
	<updated>2011-07-07T09:38:25Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=14922</id>
		<entry>
			<title type="html"><![CDATA[Re: Программа для чтения PDF, написанная целиком на JavaScript]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=193356#p193356" />
			<content type="html"><![CDATA[<p>Не знаю как реагировать... То ли руто то ли &quot;история успеха&quot;.<br />Вроде как и неплохо, но на джаваскрипте. Интересно будет посмотреть что с ним дальше будет.</p>]]></content>
			<author>
				<name><![CDATA[kOvr1K]]></name>
				<uri>https://linuxforum.ru/profile.php?id=5441</uri>
			</author>
			<updated>2011-07-07T09:38:25Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=193356#p193356</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Программа для чтения PDF, написанная целиком на JavaScript]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=193212#p193212" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Termo пишет:</cite><blockquote><p>смешная новость</p></blockquote></div><p>Да, но ведь работает! Причём очень даже хорошо работает!<br />P.S. Вот те на! В Chrome отлично работает, а в опере не работает вообще! :o<br />P.S.S. А в фраерфогсе ШГ получаются, в общем тока гуглохром без труда осилил! wink</p>]]></content>
			<author>
				<name><![CDATA[Dimaty]]></name>
				<uri>https://linuxforum.ru/profile.php?id=4696</uri>
			</author>
			<updated>2011-07-07T04:09:07Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=193212#p193212</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Программа для чтения PDF, написанная целиком на JavaScript]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=193201#p193201" />
			<content type="html"><![CDATA[<p>смешная новость<br />скоро напишут ядро ОС на HTML</p>]]></content>
			<author>
				<name><![CDATA[Termo]]></name>
				<uri>https://linuxforum.ru/profile.php?id=4469</uri>
			</author>
			<updated>2011-07-06T23:49:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=193201#p193201</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Программа для чтения PDF, написанная целиком на JavaScript]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=192969#p192969" />
			<content type="html"><![CDATA[<p><strong> Полноценная программа для чтения PDF, написанная целиком на JavaScript</strong></p><p><a href="http://blog.mozilla.com/cjones/2011/07/03/pdf-js-first-milestone/">Увидел свет</a> первый работоспособный релиз проекта <a href="https://github.com/andreasgal/pdf.js">pdf.js</a>, в рамках которого создано приложение для просмотра PDF-файлов, написанное целиком на JavaScript с использованием технологий HTML5. Код проекта распространяется под лицензией BSD. По заявлению разработчиков в представленной версии им удалось полностью обеспечить корректное отображение <a href="http://people.mozilla.org/~gal/compressed.tracemonkey-pldi-09.pdf">PDF-обзора</a> JavaScript-движка Tracemonkey, которое использовалось в качестве эталонного PDF-документа. Протестировать pdf.js в работе можно на <a href="http://andreasgal.github.com/pdf.js/multi_page_viewer.html">данной странице</a>.</p><p>Из особенностей pdf.js можно отметить:</p><ul><li><p>Поддержка масштабирования и навигации по страницам,</p></li><li><p>Поддержка динамической загрузки шрифтов Type 1 и TrueType;</p></li><li><p>Решение проблем с качеством отображения элементов страниц, например, отображаются тени для рамок и градиенты;</p></li><li><p>Попиксельный вывод содержимого;</p></li><li><p>Возможность вывода диаграмм и графиков;</p></li><li><p>Реализация навигационного элемента, выполненного в виде столбца с эскизами страниц;</p></li><li><p>Поддержка работы со сжатыми объектами;</p></li><li><p>Так как код написан на безопасном высокоуровневом языке, он не подвержен уязвимостям, свойственным бинарным плагинам для просмотра PDF.</p></li></ul><p><span class="postimg"><img src="http://www.opennet.ru/opennews/pics_base/31096_1309872136.jpg" alt="http://www.opennet.ru/opennews/pics_base/31096_1309872136.jpg" /></span><br />С <a href="http://blog.mozilla.com/cjones/2011/06/15/overview-of-pdf-js-guts/">технической стороны</a>, в pdf.js используется своеобразная JIT-компиляция PDF: изначально представленные в файле бинарные массивы преобразуются в потоки байткода PDF, который затем транслируется в JavaScript-представление и выполняется. Сгенерированная на основе PDF JavaScript-программа выводит данные через HTML-тег canvas. При этом транслируемый в JavaScript байткод PDF можно разделить на простой и сложный. Простой код сводится к таким операциям, как &quot;нарисовать кривую&quot; или &quot;вывести текст&quot;. Сложный код определяет такие операции, как &quot;заполнение областей с затенением по маске&quot;. Усложняет реализацию то, что интегрированные в PDF данные, такие как шрифты и изображения, могут храниться в сжатом или закодированном виде.</p><p>К сожалению не обходится и без проблем, таких как трудность реализации поддержки вывода на печать и выделения текста при попиксельном формировании изображения. Кроме того, возможностей canvas недостаточно для полноценного рендеринга PDF. Потенциальным решением является дополнительное задействование SVG, но использование SVG потребляет значительно больше ресурсов. В качестве компромиса изучается вариант с начальной быстрой отрисовкой через canvas, формированим более качественного SVG-варианта в фоне и замещеним canvas-варианта на SVG-вариант, после того как изображение будет готово.</p><p>Из планов на будущее отмечается реализация поддержки более качественного пиксельного рендеринга документов, оформленных в соответствии со спецификацией PDF 1.7. Ожидается расширение числа поддерживаемых web-браузеров (в настоящее время разработчики используют ночные сборки Firefox, в других браузерах полная работоспособность пока не гарантируется). Переработка внутренней архитектуры для поддержки технологии WebWorkers для обеспечения параллельного выполнения задач, требующих интенсивных вычислений. Оптимизация отзывчивости интерфейса и создание варианта для встраивания pdf.js в web-приложения.</p><p>В течение трех месяцев планируется реализовать набор возможностей, достаточных для просмотра большинства типичных PDF-документов. Проект развивается при поддержке и участии разработчиков Mozilla, поэтому не удивительно, что конечной целью разработки <a href="http://blog.mozilla.com/cjones/2011/06/15/overview-of-pdf-js-guts/">является</a> интеграция pdf.js в Firefox для использования в качестве встроенного в браузер PDF-просмотрщика (в браузер Chrome дополнение для чтения PDF <a href="http://www.opennet.ru/opennews/art.shtml?num=27017">встроено</a> начиная с выпуска 6). </p><p>© <a href="http://www.opennet.ru/opennews/art.shtml?num=31096">OpenNET.ru</a></p>]]></content>
			<author>
				<name><![CDATA[pb13]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16999</uri>
			</author>
			<updated>2011-07-06T07:57:10Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=192969#p192969</id>
		</entry>
</feed>
