355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Юрий Карпов » Пишем программу для создания книг FB2 (СИ) » Текст книги (страница 3)
Пишем программу для создания книг FB2 (СИ)
  • Текст добавлен: 17 октября 2016, 02:08

Текст книги "Пишем программу для создания книг FB2 (СИ)"


Автор книги: Юрий Карпов



сообщить о нарушении

Текущая страница: 3 (всего у книги 3 страниц)

// Периодика

('periodic', 'Журналы'),

//Поэзия, Драматургия

('dramaturgy', 'Драматургия'),

('poetry', 'Поэзия'),

// Приключения

('adv_western', 'Вестерн'),

('adv_history', 'Исторические приключения'),

('adv_maritime', 'Морские приключения'),

('adventure', 'Приключения'),

('adv_indian', 'Приключения про индейцев'),

('adv_animal', 'Природа и животные'),

('adv_geo', 'Путешествия и география'),

// Проза

('prose_history', 'Историческая проза'),

('prose_classic', 'Классическая проза'),

('prose_counter', 'Контркультура'),

('prose_military', 'О войне'),

('prose', 'Проза'),

('prose_rus_classic', 'Русская классическая проза'),

('prose_su_classics', 'Советская классическая проза'),

('prose_contemporary', 'Современная проза'),

// Прочее

('other', 'Неотсортированное'),

('notes', 'Партитуры'),

//Религия и духовность

('religion_budda', 'Буддизм'),

('religion', 'Религиозная литература'),

('religion_rel', 'Религия'),

('religion_self', 'Самосовершенствование'),

('religion_esoterics', 'Эзотерика'),

//Справочная литература

('geo_guides', 'Путеводители'),

('ref_guide', 'Руководства'),

('ref_dict', 'Словари'),

('reference', 'Справочная литература'),

('ref_ref', 'Справочники'),

('ref_encyc', 'Энциклопедии'),

//Старинное

('antique_ant', 'Античная литература'),

('antique_east', 'Древневосточная литература'),

('antique_russian', 'Древнерусская литература'),

('antique_european', 'Европейская старинная литература'),

('antique_myths', 'Мифы. Легенды. Эпос'),

('antique', 'Старинная литература'),

//Техника

('sci_metal', 'Металлургия'),

('sci_radio', 'Радиоэлектроника'),

('sci_build', 'Строительство и сопромат'),

('sci_transport', 'Транспорт и авиация'),

//Фантастика

('sf_history', 'Альтернативная история'),

('sf_action', 'Боевая фантастика'),

('sf_heroic', 'Героическая фантастика'),

('sf_fantasy_city', 'Городское фэнтези'),

('sf_detective', 'Детективная фантастика'),

('sf_cyberpunk', 'Киберпанк'),

('sf_space', 'Космическая фантастика'),

('sf', 'Научная Фантастика'),

('sf_postapocalyptic', 'Постапокалипсис'),

('sf_social', 'Социально-психологическая фантастика'),

('sf_horror', 'Ужасы и Мистика'),

('sf_fantasy', 'Фэнтези'),

('sf_epic', 'Эпическая фантастика'),

('sf_humor', 'Юмористическая фантастика'),

//Юмор

('humor_anecdote', 'Анекдоты'),

('humor', 'Юмор'),

('humor_prose', 'Юмористическая проза'),

('humor_verse', 'Юмористические стихи')

);

maxI = 18;

LI: array[0..maxI] of integer = (

0, // Деловая литература

16, // Детективы и Триллеры

28, // Детское

36,// Документальная литература

42, //Домоводство

52, // Компьютеры и Интернет

60, // Любовные романы

67, // Наука, Образование

93, // Периодика

94, //Поэзия, Драматургия

96, // Приключения

106,// Проза

111,// Прочее

113, //Религия и духовность

118, //Справочная литература

124, //Старинное

130,//Техника

134, //Фантастика

147 //Юмор

);

maxL = 23;

Lg: array[0..maxL] of gr = (

('', ''),

('en', 'Английский'),

('be', 'Белорусский'),

('bg', 'Болгарский'),

('hu', 'Венгерский'),

('nl', 'Голландский'),

('el', 'Греческий современный (1453-)'),

('da', 'Данийский'),

('grc', 'Древнегреческий (до 1453)'),

('he', 'Иврит'),

('it', 'Итальянский'),

('de', 'Немецкий'),

('pl', 'Польский'),

('pt', 'Португальский'),

('ru', 'Русский'),

('sk', 'Словакский'),

('sl', 'Словенский'),

('tr', 'Турецкий'),

('uk', 'Украинский'),

('fi', 'Финский'),

('fr', 'Французский'),

('cs', 'Чешский'),

('et', 'Эстонский'),

('ja', 'Японский')

);

implementation

end.

// конец кода

А это – файл проекта

my_FB2.dpr

// начало кода

program my_FB2;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

genres in 'genres.pas' {Form3},

authors in 'authors.pas' {Form2},

EditStr in 'EditStr.pas' {EditSt};

{$R *.res}

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TForm3, Form3);

Application.CreateForm(TForm2, Form2);

Application.CreateForm(TEditSt, EditSt);

Application.Run;

end.

// конец кода

Попробовал выполнить собственные инструкции, оказалось забыл еще один файл. А так ничего, "поругался" Дельфи на отсутствие ресурсного файла, да ничего он сам его сделает. А забытый, вот он:

UmFB2.pas

// начало кода

unit UmFB2;

interface

uses

Classes, SysUtils, Dialogs;

Type

TmyStyle = (

Norm, Epig, Auth, Sub, Poem, Citat, None,

ZZ, // пустой тип

H1, H2, H3, H4, H5 );

var

SytleStack : TList;

// StyleList : TList;

OutList : TStringList;

EndNotes_count: integer;

// Path : string;

function GetStyle(S:string; var m:TmyStyle):string;

function GetStr(S:string):string;

procedure PrintString(St, E : string);

implementation

procedure PrintString(St, E : string);

begin

if E <> '' then

OutList.Add(' <'+St+'>'+E +'');

end;

function GetStyle(S:string; var m:TmyStyle):string;

var

n : byte;

ss : string;

begin

n := pos('|', S);

ss := copy(s,1,n-1); // стиль

case ss[length(ss)] of

'N' : m := Norm;

'E' : m := Epig;

'A' : m := Auth;

'1' : m := H1;

'2' : m := H2;

'3' : m := H3;

'4' : m := H4;

'5' : m := H5;

'S' : m := Sub;

'P' : m := Poem;

'C' : m := Citat;

'-' : m := None;

end;// case

delete(s,1,n+1); // текст

result := S;

end;

function GetStr(S:string):string;

var

n : byte;

begin

n := pos('|', S);

delete(s,1,n+1); // текст

result := S;

end;

BEGIN

SytleStack := TList.create;

OutList := TStringList.Create;

// StyleList := TList.Create;

END.

// конец кода

Ну вот и весь исходник.

Успехов.

w_cat.

notes

Примечания

1

Эти стихи, не имеют никакого отношения к теме. Ну просто, они мне нравятся.


    Ваша оценка произведения:

Популярные книги за неделю