ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: Alexander Bokovoy <ab@avilink.net>
To: mandrake-russian@linuxteam.iplabs.ru
Subject: [mdk-re] Re: [mdk-re]О почте и т.п.
Date: Wed Jan  3 02:42:01 2001
Message-ID: <20010103014211.B431@avilink.net> (raw)
In-Reply-To: <1085880728.20010103010659@otstavnov.com>; from maksim@otstavnov.com on Wed, Jan 03, 2001 at 01:06:59AM +0300

On Wed, Jan 03, 2001 at 01:06:59AM +0300, Maksim Otstavnov wrote:
> Wednesday, January 03, 2001, 12:50:24 AM, Aleksey wrote:
> 
> >> Я _этого_ и не понял: зачем приложению генерировать ps...
> 
> AN> Вот именно, что этого делать не нужно. Но тогда нужна
> AN> универсальная библиотека. Если ее нет, то что же делать
> AN> приложению?
> 
> Использовать то, что есть. Сегодня HTML хватит для 90% приложений. А
> html2ps писать _все равно <sigh> придется_.
Безусловно. Только вот тем приложениям, которые рисуют (а это не только
пресловутые растровые и векторные редакторы, а разнообразные научные
программы в том числе), возможностей HTML будет маловато. В частности,
SVG до сих пор только Candidate Recommendation, и уже сейчас есть
комментарии о том, что, в частности, поддержка вывода текста в нем
совсем по-детски спроектирована. Например, требования нередактируемости
глифов и отсутствие заранее информации о их размерах (bounding box)
осложняют библиотеку трансформации SVG в постскрипт, отсутствие
расположения текста вдоль кривой делает нереализуемыми многие эффекты
из DTP (и не только -- в тех же научных, обучающих, картографических
программах расположение текста вдоль кривой не есть прихоть).
Это только один пример.

> AN> Я уже писал. i18n можно сделать прозрачным, и примеры этому есть.
> 
> Я немного не про это: помимо i18n должны быть очень существенные
> преимущества, чтобы ей начали пользоваться.
Вы имеете в виду библиотеку печати? Единый кроссплатформенный интерфейс
и отсутствие необходимости самостоятельного формирования печатной формы
(по аналогии с микроэлектроникой) стоят многого.

> >> Как курьезный пример стоит упомянуть, что в MS, при всей ее
> >> компактности и в количественном отношении (по OSS-меркам),
> 
> AN> ??? Не думаю, что MS компактна по меркам OSS. Вы сильно
> AN> преувеличиваете количество реальных разработчиков Open Source.
> 
> Я не думаю, что сейчас у них количество _программистов_ в каком-то
> проекте превышает сотню.
В OpenSource проектах редко количество программистов превышает несколько
десятков, пик, скорее, приходится на 3-10. Конечно, чем крупнее проект,
тем больше программистов, но реально работающих над кодом достаточно
мало -- остальные обеспечивают инфраструктуру, иногда эффективно, иногда
-- не очень.

> >> Я _этого_ и не понял: зачем приложению генерировать ps...
> AB> А что оно должно генерировать? Ведь должно генерироваться что-то, что
> AB> далее может быть обработано подсистемой управления печатью.
> 
> Я, видимо, все же очень косноязычен. Попробую еще раз. Для решения
> задачи корректной печати обсуждаются два подхода:
> 
> а) библиотека печати,
> 
> б) некий промежуточный формат.
> 
> Я думаю, никто не будет спорить, что синтаксис/семантика набора
> системных вызовов в первом случае и самого формата во втором будут
> сопоставимыми по сложности при сопоставимой экспрессивной силе.
> 
> Я аргументирую в пользу второго (отнюдь не считая аргументы ни
> бесспорными, ни решающими):
> 
> 1) можно опереться на существующие языки разметки, а не выдумывать все
> заново,
> 
> 2) можно сузить потребную полосу пропускания на выходе приложения, что
> весьма желательно для топологий с выделенным принт-сервером или с
> аутсорсингом принт-сервиса за пределы локальной сети,
> 
> 3) используется традиционная для *NIX модель компонентности,
> основанная пошаговой декомпозиции задачи и использовании маленьких
> утилит и каналов. Иные модели остаются новацией, на успехи и
> последствия которой еще надо посмотреть.
Собственно, все это тот же PostScript-ориентированный подход, описываемый
(пока в очень осторожных и несколько размытых рамках) в этой дискуссии,
позволяет воплотить. Объемы документации на PS не обязательно диктуют,
что входной интерфейс библиотеки печати будет таким же распухшим.

> AB> Текст по кривым -- это не только DTP. Пусть не совсем точно по теме
> AB> дискуссии, но Вы ведь наверняка знакомы с проектом Berlin?
> Нет, не знаком, более того, полгода назад меня кто-то уже уличал в
> оном незнакомстве.
:-)

> AB> Отрисовка HTML в PostScript не покрывает всего спектра требований, хотя бы потому,
> AB> что некоторые элементы, необходимые сегодня (и имеющиеся, например, в расширения TeXа)
> AB> только обсуждаются в подкомитетах WWW.
> Предъявите весь спектр, пожалуйста. Серьезно.
SVG я уже описывал в начале письма. Собственно, давайте посмотрим, что
предлагается W3C в качестве языков описания разметки, если мы примем за
основу, что входным языком библиотеки печати должен быть некий
гипертекстовый механизм, который мы условно назовем HTML (в данном
контексте -- в приложении к "твердой" копии): 

1. xHTML как язык гипертекстового описания документа.
2. CSS3 как язык описания физических свойств элементов документа.
3. SVG как язык описания графических элементов.
4. MathML как язык описания математической символики.
5. ECMA Script как язык генерации элементов документа
   в процессе просмотра/печати.
Все?
CSS3 вводит нужные в нашем контексте разбиение на страницы и 
многоколоночность, ссылки на элементы на разных страницах
(см. стр. ХХХ), и другие вещи. CSS2 определяет довольно
полно модель прямоугольных фрагментов со сторонами, параллельными
осям координат в прямоугольной системе координат. Все операции
вращения полностью отсутствуют.

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

Что мы получаем: библиотека представляет собой, фактически,
отдельный встраиваемый браузер, который не позволяет печатать
документы с искаженными свойствами отдельных шрифтов/глифов/символов.
Тем самым, идея общей библиотеки печати теряется -- необходимо делать
дополнительный механизм для реализации отсутствующих возможностей
(которые, в свою очередь, не есть принадлежность конкретных
и немногочисленных программных средств).

> AB> А, главное, нет библиотеки корректного рендеринга HTML в
> AB> PostScript, как уже Алексей наглядно показал :-)
> Все же (как давно юзер, а не кодер) хочу фильтр, а не библиотеку ;)
Написать фильтр, имея библиотеку, в десятки раз проще, чем "гонять"
один и тот же код из одного проекта в другой, пристраивая его
каждый раз в общую инфраструктуру. Нагляднейшие примеры: фильтр
вордовских документов, переросший в библиотеку wvHTML и демонстрационная
реализация парсера XML, ставшая библиотекой Expat этим летом.

-- 
Sincerely yours, Alexander Bokovoy 
  The Midgard Project   | www.midgard-project.org |    Aurora R&D team 
Minsk Linux Users Group |    www.minsk-lug.net    |  www.aurora-linux.com  
   IPLabs Linux Team    |     linux.iplabs.ru     | Architecte Open Source
-- Better late than never.
		-- Titus Livius (Livy)



  parent reply	other threads:[~2001-01-03  2:42 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-29 17:19 [mdk-re] Re: [mdk-re] ï ÐÏÞÔÅ É Ô.Ð Roman S
2000-12-29 17:48 ` [mdk-re] Re: [mdk-re] О почте и т.п Aleksey Novodvorsky
2000-12-29 18:17   ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-29 19:22     ` Aleksey Novodvorsky
2000-12-29 21:00       ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-29 21:26         ` Aleksey Novodvorsky
2000-12-30 13:40           ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-30 14:21             ` Aleksey Novodvorsky
2000-12-30 18:18               ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-30 18:39                 ` Aleksey Novodvorsky
2000-12-30 20:56                   ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-30 21:14                     ` Aleksey Novodvorsky
2000-12-30 21:52                       ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-31  7:58                         ` Aleksey Novodvorsky
2000-12-31 13:22                           ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-31 15:25                             ` Aleksey Novodvorsky
2000-12-31 17:39                               ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-31 17:56                                 ` [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] " Aleksey Novodvorsky
2000-12-31 16:57                             ` [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] " Alexander Bokovoy
2000-12-31 17:54                               ` [mdk-re] " Maksim Otstavnov
2000-12-31 18:00                                 ` Aleksey Novodvorsky
2001-01-01 12:36                                 ` [mdk-re] " Alexander Bokovoy
2001-01-01 22:58                                   ` [mdk-re] " Maksim Otstavnov
2001-01-02  0:14                                     ` [mdk-re] Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re]О " Aleksey Novodvorsky
2001-01-02  2:13                                       ` [mdk-re] " Alexander Bokovoy
2001-01-02  2:28                                         ` Aleksey Novodvorsky
2001-01-02 17:36                                       ` [mdk-re] Maksim Otstavnov
2001-01-02 21:21                                         ` [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re]О почте и т.п Alexander Bokovoy
2001-01-02 21:49                                           ` [mdk-re] Re[8]: ï ÐÏÞÔÅ É Ô.Ð äÙÍÙÞ
2001-01-02 21:55                                             ` [mdk-re] Re: [mdk-re] Re[8]: О почте и т.п Alexander Bokovoy
2001-01-03 12:15                                           ` [mdk-re] New distribution Andrei Gerasimenko
2001-01-03 12:18                                             ` Anton Farygin
2001-01-03 13:05                                               ` Andrei Gerasimenko
2001-01-03 13:13                                                 ` Anton Farygin
2001-01-03 18:53                                                   ` Re[2]: " Maksim Otstavnov
2001-01-03 19:47                                                     ` Aleksey Novodvorsky
2001-01-03 20:23                                                       ` Re[2]: " Maksim Otstavnov
2001-01-03 23:30                                                         ` Aleksey Novodvorsky
2001-01-04  0:35                                                           ` Re[2]: " Maksim Otstavnov
2001-01-04  1:07                                                             ` Aleksey Novodvorsky
2001-01-04 11:08                                                               ` Re[2]: " Vladimir V. Karpinsky
2001-01-04 11:19                                                                 ` Anton Farygin
2001-01-04 11:23                                                                   ` Re[2]: " Vladimir V. Karpinsky
2001-01-04 11:25                                                                     ` Anton Farygin
2001-01-04 13:26                                                                       ` Aleksey Novodvorsky
2001-01-04 14:28                                                                         ` Igor Fadin
2001-01-04 11:44                                                                     ` Re[2]: " Dmitry
2001-01-04 13:31                                                                     ` Sergey Sokolov
2001-01-04 13:54                                                                       ` Pavel N. Solovyov
2001-01-04 16:08                                                                         ` Sergey Sokolov
2001-01-04 13:03                                                                 ` Andrei Gerasimenko
2001-01-04 13:20                                                                 ` Pavel N. Solovyov
2001-01-04 13:30                                                                   ` Re[4]: " Vladimir V. Karpinsky
2001-01-04 13:35                                                               ` Re[2]: " Maksim Otstavnov
2001-01-04 13:51                                                                 ` Aleksey Novodvorsky
2001-01-04  7:22                                                     ` rider
2001-01-04 13:35                                                       ` Re[2]: " Maksim Otstavnov
2001-01-04 13:52                                                         ` Anton Farygin
2001-01-03 13:17                                                 ` Aleksey Novodvorsky
2001-01-03 13:12                                               ` Aleksey Novodvorsky
2001-01-03 12:21                                             ` AB
2001-01-03 12:24                                               ` Anton Farygin
2001-01-03 13:14                                                 ` Aleksey Novodvorsky
2001-01-03 13:28                                                   ` Anton Farygin
2001-01-03 13:35                                                     ` Aleksey Novodvorsky
2001-01-03 13:39                                                       ` Anton Farygin
2001-01-03 23:53                                                         ` Dmitry V. Levin
2001-01-03 18:53                                                     ` Re[2]: " Maksim Otstavnov
2001-01-03 19:34                                                       ` Aleksey Novodvorsky
2001-01-04  7:20                                                       ` rider
2001-01-03 20:01                                                   ` Igor Solovyov
2001-01-03 23:56                                                     ` Andrei Gerasimenko
2001-01-04  0:00                                                       ` Aleksey Novodvorsky
2001-01-05  8:24                                                   ` Dmitry Samoyloff
2001-01-03 21:12                                               ` Alexey Voinov
2001-01-02 23:22                                         ` [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re:[mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re]О почте и т.п Aleksey Novodvorsky
2001-01-03  1:05                                           ` [mdk-re] Re[2]: " Maksim Otstavnov
2001-01-03  1:41                                             ` [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re:[mdk-re] Re: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re]О почте ит.п Aleksey Novodvorsky
2001-01-03 15:07                                               ` [mdk-re] " Peter Novodvorsky
2001-01-03 15:55                                                   ` [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re]Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] " Peter Novodvorsky
2001-01-03 16:07                                                     ` Alexander Bokovoy
2001-01-03 18:53                                                     ` [mdk-re] Re: [mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re]Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: " Maksim Otstavnov
2001-01-03 18:53                                               ` [mdk-re] print lib issue (Was: Re[2]: [mdk-re] ...О почте ит.п.) Maksim Otstavnov
2001-01-03 20:27                                                 ` [mdk-re] " Maksim Otstavnov
2001-01-03  2:42                                             ` Alexander Bokovoy [this message]
2001-01-03 18:53                                               ` [mdk-re] Re: [mdk-re] Re: [mdk-re]О почте и т.п Maksim Otstavnov
2001-01-12 21:47                                                 ` [mdk-re] Re: [mdk-re] Re: [mdk-re]ï ÐÏÞÔÅ É Ô.Ð Serge Skorokhodov
2001-01-12 22:05                                                   ` [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] Re: [mdk-re]О почте и т.п Maksim Otstavnov
2001-01-12 22:10                                                     ` [mdk-re] " Alexander Bokovoy
2001-01-03 12:28                                           ` [mdk-re] О " Andrei Gerasimenko
2001-01-04 17:30                                           ` [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] Re: [mdk-re] Re:[mdk-re] Re: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]:[mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re]О " Maxim Podorov
2001-01-04 17:44                                             ` Aleksey Novodvorsky
2001-01-04 18:08                                               ` [mdk-re] Re[2]: " Maksim Otstavnov
2000-12-30 20:56                   ` [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] О " Maksim Otstavnov
2000-12-30 21:16                     ` Aleksey Novodvorsky
2001-01-04 13:45                       ` Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] ï ÐÏÞÔÅ É Ô.Ð Roman Ivanov
2001-01-04 14:12                         ` [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] О почте и т.п Aleksey Novodvorsky
2001-01-04 16:51                           ` [mdk-re] Re[2]: " Maksim Otstavnov
2001-01-05 12:48                             ` [mdk-re] " Mikhail Zabaluev
2001-01-05 13:19                               ` Alexander Bokovoy
2001-01-05 16:42                               ` Aleksey Novodvorsky
2001-01-05 20:06                                 ` [mdk-re] Re[2]: " Maksim Otstavnov
2001-01-05 20:18                                   ` Aleksey Novodvorsky
2001-01-05 20:57                                   ` Alexander Bokovoy
2001-01-04 14:37                         ` [mdk-re] Re[3]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] " Maksim Otstavnov
2001-01-04 14:47                           ` cornet
2001-01-09 15:08                         ` [mdk-re] Re: Re[2]: " Dmitry A. Povarov
2001-01-10 13:21                           ` Dmitry A. Povarov
2000-12-30  2:36         ` Dmitry V. Levin
2000-12-30  0:46     ` [mdk-re] Re[2]: [mdk-re] Re: [mdk-re] ï ÐÏÞÔÅ É Ô.Ð Roman S
2000-12-30 20:57       ` [mdk-re] Re: [mdk-re] О почте и т.п Mikhail Zabaluev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010103014211.B431@avilink.net \
    --to=ab@avilink.net \
    --cc=mandrake-russian@linuxteam.iplabs.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git