Перекрёстная ссылка в два клика

Перекрёстные ссылки в публикации могут существенно сэкономить время и нервы при перевёрстке, причём не только верстальщику. Однако, расстановка их штатными средствами может, в свою очередь, потребовать столько времени, что вполне естественным окажется решение оставить эту затею и надеяться, что через год-другой подготовку к переизданию будет выполнять кто-то другой.

Действительно, некоторые виды перекрёстных ссылок создаются в два этапа: сначала создаётся привязка к тексту ("якорь"), потом — сама ссылка на этот текст. Каждый раз при этом требуется вручную производить целый ряд нажиманий на разные кнопки. Например, вот так происходит создание привязки:

Создание привязки

А примерно вот так — ссылки на эту привязку:

Создание перекрёстной ссылки

То же самое можно проделывать и через панель "Перекрёстные ссылки" (как советует официальный мануал), но этот способ не намного быстрее.

Итак, у нас две операции, и это значит, что весь процесс можно (и нужно) свести к двум кнопкам. Что и проделаем, взяв за основу интерфейс для типовых операций, добавив туда код для двух кнопок:

Кнопки для создания ссылки

//Действия кнопок группы 4
///*
//Кнопки действий
var but4_1 = addWorkButton (pan4,"Add Text Anchor",80,0);
but4_1.onClick =function(){
	w.text = "Занято...";
	var doc = app.activeDocument;
	try{
		var hname = doc.selection[0].parentTextFrames[0].parentPage.name+"-"+doc.selection[0].contents;
		var h= doc.hyperlinkTextDestinations.add(doc.selection[0],{name:hname});
		}
	catch(e){alert(e.description);}
	w.text = "Свободно";
	app.activate();
	}
//*/
//*
var but4_2 = addWorkButton (pan4,"Add Cross Ref",80,0);
but4_2.onClick =function(){
	w.text = "Занято...";
	var doc = app.activeDocument;
	try{
		var h = doc.hyperlinkTextDestinations[-1];
		var t = doc.selection[0];
		var xRefForm = doc.crossReferenceFormats.item("Page Number");
		var s = doc.crossReferenceSources.add(t, xRefForm);
		var crref = doc.hyperlinks.add(s, h);
		}
	catch(e){alert(e.description);}
	w.text = "Свободно";
	app.activate();
	}
//*/

Нажатие на первую кнопку создаёт привязку по имени "Страница-выделенный_текст", например, "6-Вопросы". Нажатие на вторую добавит перекрёстную ссылку типа "Номер страницы" вместо выделенного в момент нажатия текста, либо в том месте, где стоит курсор. Ссылаться же эта ссылка будет на "якорь", созданный последним по счёту (в частности, первой кнопкой).

Комментариев нет.

Оставить комментарий:

Имя*:
E-mail*:
Текст комментария*:
Код безопасности*:

expand other scripts list
наверх