powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Печать очень широких таблиц, как разбить по страницам?
25 сообщений из 43, страница 1 из 2
Печать очень широких таблиц, как разбить по страницам?
    #37980951
Новичок_я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Формирую HTML документ, в котором есть очень широкая таблица. Необходимо чтобы при печати эта таблица автоматически разбивалась на печатные страницы
Документ создаю из XML + XSLT
Текст шаблона:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
<?xml version="1.0" encoding="Windows-1251" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" media-type="text/html; charset=windows-1251" />
<xsl:template match="/">
<html>
	<head/>

	<body>
	<font face = "Arial">
		

	<table border = "0" >
		<xsl:attribute name = "width">
			<xsl:value-of select="//ApportionMenuInfo/PageWidth"/>
		</xsl:attribute>
	<tr><td>

	<style>
		.tbl
		{
			border-collapse: collapse;
		}
		.tbl td
		{
			border: solid 1px silver;
			padding: 0px;
		}
	</style>

	<table border = "0" width = "100%">
		<tr>
			<td style = "font-size: 10pt; width = 50%; text-align = left">
				<br>Наименование учреждения: <u><xsl:value-of select="//PersonalData/Organization"/></u></br>
				<br>Утверждаю</br>
				<br>Главный врач<u>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
							&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</u> (подпись)</br>
			</td>
			<td style = "font-size: 10pt; width = 50%; text-align = right">
				<br>Форма № 44-М3</br>
				<br>к Инструкции по организации</br>
				<br>лечебного питания</br>
				<br>в лечебно-профилактических</br>
				<br>учреждениях</br>
			</td>
		</tr>
		<tr>
			<td style = "font-size: 11pt; width = 100%; text-align = center">
				<br>МЕНЮ-РАСКЛАДКА ДЛЯ ПРИГОТОВЛЕНИЯ ПИТАНИЯ</br>
				<br>НА <xsl:value-of select="//ApportionMenuInfo/IllNumber"/> БОЛЬНЫХ НА <xsl:value-of select="//ApportionMenuInfo/ExecDateCl"/></br>
			</td>
		</tr>

	</table>


	<table border = "0" width = "100%" cellpadding = "2" cellspacing = "0" class = "tbl">

	<tr>
		<td colspan = "2" style = 'font-size: 10pt; width = 20%; text-align = center'>Наименование</td>
		<td style = 'font-size: 10pt; width = 60%; text-align = center'>
			<xsl:attribute name = "colspan">
				<xsl:value-of select = "count(//MainTable/MealTime/Diet/Project) + 1"/> 
			</xsl:attribute>
			Количество продуктов питания, подлежащих закладке
		</td>

	</tr>

	<tr>
		<td rowspan = "2" style = 'font-size: 10pt; text-align = center'>продукта</td>
		<td rowspan = "2" style = 'font-size: 10pt; width = 10%; text-align = center'>ед. изм.</td>

		<xsl:for-each select = "//MainTable/MealTime">
		<td style = 'font-size: 10pt; text-align = center'>
			<xsl:attribute name = "colspan">
				<xsl:value-of select = "count(./Diet/Project)"/>
			</xsl:attribute>
			<xsl:value-of select="./Name"/>
		</td>
		</xsl:for-each>
		<td rowspan = "2" style = 'font-size: 10pt; text-align = center'>Итого</td>
	</tr>

	<tr>
		<xsl:for-each select = "//MainTable/MealTime/Diet">
				<td style = 'font-size: 10pt; text-align = center'>
					<xsl:attribute name = "colspan">
						<xsl:value-of select = "count(./Project)"/>
					</xsl:attribute>
					<xsl:value-of select="./Name"/>
				</td>
		</xsl:for-each>

	</tr>

	<tr>
		<td style = 'font-size: 10pt; text-align = left'>№ блюда</td>
		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>
		<xsl:for-each select = "//MainTable/MealTime/Diet/Project">
				<td style = 'font-size: 10pt; text-align = center'>
					<xsl:value-of select="./Number"/>
				</td>
		</xsl:for-each>

		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>
	</tr>

	<tr>
		<td style = 'font-size: 10pt; text-align = left'>Наименование блюда</td>
		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>

		<xsl:for-each select = "//MainTable/MealTime/Diet/Project">
				<td style = 'font-size: 10pt; text-align = center'>
					<xsl:value-of select="./Name"/>
				</td>
		</xsl:for-each>

		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>
	</tr>

	<tr>
		<td style = 'font-size: 10pt; text-align = left'>Количество порций</td>
		<td style = 'font-size: 10pt; text-align = center'>шт</td>

		<xsl:for-each select = "//MainTable/MealTime/Diet/Project">
				<td style = 'font-size: 10pt; text-align = center'>
					<xsl:value-of select="./Portion"/>
				</td>
		</xsl:for-each>

		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>
	</tr>

	<tr>
		<td style = 'font-size: 10pt; text-align = left'>Выход - вес порции</td>
		<td style = 'font-size: 10pt; text-align = center'>г</td>

		<xsl:for-each select = "//MainTable/MealTime/Diet/Project">
				<td style = 'font-size: 10pt; text-align = center'>
					<xsl:value-of select="./Weight"/>
				</td>
		</xsl:for-each>

		<td style = 'font-size: 10pt; text-align = center'>&#160;</td>
	</tr>

	<xsl:for-each select = "//RawList/Raw">
	<tr>
		<td style = 'font-size: 10pt; text-align = left'><xsl:value-of select = "./Name"/></td>
		<td style = 'font-size: 10pt; text-align = center'><xsl:value-of select="//ApportionMenuInfo/WeightUnit"/></td>

		<xsl:for-each select = "./Weight">
			<td style = 'font-size: 10pt; text-align = center'><xsl:value-of select = "@OPValue"/><xsl:value-of select = "@TotalValue"/></td>
		</xsl:for-each>
		<td style = 'font-size: 10pt; text-align = center'><xsl:value-of select="./TotalWeight"/></td>

	</tr>
	</xsl:for-each>

	</table>

	<table border = "0" width = "100%">
	<tr>
		<td style = "font-size: 10pt; width = 100%; text-align = left">
			<br>Врач-диетолог: ....................................................................... (подпись)</br><br/>
			<br>Медицинская сестра диетическая: ....................................................................... (подпись)</br><br/>
			<br>Зав. производством (шеф-повар): ....................................................................... (подпись)</br><br/>
			<br>Бухгалтер: ....................................................................... (подпись)</br>

		</td>
	</tr>
	</table>


	</td></tr>
	</table>

	</font>
    </body>
</html>
</xsl:template>
</xsl:stylesheet>



Сейчас документ печатается, но только та часть, которая помещается на ширину печатной страницы, все что правее - теряется. Подскажите, пожалуйста, как можно напечатать документ?
спасибо!
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37981034
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новичок_яПодскажите, пожалуйста, как можно напечатать документ?
Таки самому бить на странички...
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37982615
Новичок_я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaНовичок_яПодскажите, пожалуйста, как можно напечатать документ?
Таки самому бить на странички...
Понятно
Спасибо!
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37982616
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaНовичок_яПодскажите, пожалуйста, как можно напечатать документ?
Таки самому бить на странички...Т.е. делать отдельный HTML для каждой колонки листов? или я неправилльно понял?
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37982917
RCK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RCK
Гость
А как формируется сам html-код и каким образом происходит печать?
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37983150
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новичок_я,
у вас 4 столбика, что тут может не влезать
---
выложите образец с данными
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37984768
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftТ.е. делать отдельный HTML для каждой колонки листов?
В общем смысле - да.
Но всегда есть варианты...
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37985145
The_ShadoW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше уж сразу смотреть в сторону преобразования всех этих таблиц в pdf (а то и вообще какой-нибудь report engine приделать, и формировать таблицы сразу в печатном виде).
В pdf тоже придётся руками бить, но там хоть для этого условия есть.

HTML, увы, принципиально не предназначен для печати на бумаге, и граблей Вам придётся собирать до бесконечности.
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #37985630
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_ShadoW,

вордом стандартный НТМ отлично печатается(html-charset-теги table-tr-td-thead-p-h1-h2)
---
а больше на ваш отчет и не надо
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Печать очень широких таблиц, как разбить по страницам?
    #39601548
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдруг кому-то надо
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601569
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaratIsk , что это?
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601590
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

javascript формирующий pdf-файл из json
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601605
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaratIskjavascript формирующий pdf-файл из json
Там доки есть какие-то?
Про возможность почитать и все такое... У нас есть интерес к такому подходу.
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601612
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доков нет.

И пример дюже безликий.
Интересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
Какие из перечисленных элементов уже можно делать этим скриптом?
Можно ли получить примеры или описание текстовое как можно делать pdf-документ?
Возможно ли сотрудничество по развитию такого софта под наши хотения?

Запустил пример в Опере, нажал на кнопку "Экспорт". Открылась новая вкладка и все...
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601613
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,
какие доки? скрипт самодостаточен
скорми json в нужно формате и все
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601614
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,
спрашивайте - что пойму - подскажу
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601615
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,
не пробовал в опере
там ОТКРЫТЬ - просто для генерации демо-данных
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601616
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaДоков нет.

И пример дюже безликий.
Интересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
Какие из перечисленных элементов уже можно делать этим скриптом?
Можно ли получить примеры или описание текстовое как можно делать pdf-документ?
Возможно ли сотрудничество по развитию такого софта под наши хотения?

Запустил пример в Опере, нажал на кнопку "Экспорт". Открылась новая вкладка и все...

это к pdf.org
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601619
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaratIsk,
pdfmake.org

очепятка )))
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601621
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaДоков нет.

И пример дюже безликий.
Интересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
Какие из перечисленных элементов уже можно делать этим скриптом?
Можно ли получить примеры или описание текстовое как можно делать pdf-документ?
Возможно ли сотрудничество по развитию такого софта под наши хотения?

Запустил пример в Опере, нажал на кнопку "Экспорт". Открылась новая вкладка и все...

PDFMake не мой продукт
но от разработки на его основе не откажусь
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601623
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

а нажмите сначала ОТКРЫТЬ )))
это же демо и данные откуда-то надо взять
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601627
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaДоков нет.

И пример дюже безликий.
Интересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
Какие из перечисленных элементов уже можно делать этим скриптом?
Можно ли получить примеры или описание текстовое как можно делать pdf-документ?
Возможно ли сотрудничество по развитию такого софта под наши хотения?

Запустил пример в Опере, нажал на кнопку "Экспорт". Открылась новая вкладка и все...

сотрудничать готов
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601664
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaratIskскорми json в нужно формате и все
Так вот и интересно какой нужен json для получения элементов, что я описал выше...
MaratIskспрашивайте - что пойму - подскажу
Вот, спрашиваю:
- Как нужно оформлять следующие элементы
krvsaИнтересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601669
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaMaratIskскорми json в нужно формате и все
Так вот и интересно какой нужен json для получения элементов, что я описал выше...
MaratIskспрашивайте - что пойму - подскажу
Вот, спрашиваю:
- Как нужно оформлять следующие элементы
krvsaИнтересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок"
json в файле data.js
...
Рейтинг: 0 / 0
Печать очень широких таблиц, как разбить по страницам?
    #39601712
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaMaratIskскорми json в нужно формате и все
Так вот и интересно какой нужен json для получения элементов, что я описал выше...
MaratIskспрашивайте - что пойму - подскажу
Вот, спрашиваю:
- Как нужно оформлять следующие элементы
krvsaИнтересуют следующие элементы документа.
- Название
- Заголовки разного уровня
- Абзацы
- Списки
- Таблицы с повторяемыми "шапками" и без "шапок" http://pdfmake.org/index.html#/gettingstarted
а в архиве ничего полезного
...
Рейтинг: 0 / 0
25 сообщений из 43, страница 1 из 2
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Печать очень широких таблиц, как разбить по страницам?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]