[ID CC-CC2021] Верстка таблиц c вложенной графикой

Йожег

без телевизора
12 лет на форуме
Сообщения
8 836
Реакции
4 275
Вот ваш таймекс
1570492018635.png
1570492050385.png
1570492248129.png
 
Последнее редактирование:

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17
А у меня так не получается. Что же я делаю не так?)
 

Йожег

без телевизора
12 лет на форуме
Сообщения
8 836
Реакции
4 275
Ну я же рассказал. Из эксела в ворд а потом уже в индизайн. Эксел и ворд правда довольно древние (офис 2007) а индизайн новый - СС2019
1570492341224.png
 
Последнее редактирование:
  • Спасибо
Реакции: langry

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17
Это сначала в ворд экспортнули?
 

Йожег

без телевизора
12 лет на форуме
Сообщения
8 836
Реакции
4 275

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
да можно, в общем

Код:
    var docRef = app.activeDocument;

 var allGraphics = docRef.allGraphics;
 
 for(var i=0;i<allGraphics.length;i++)
 try{
     var currGraphic = allGraphics[i];
     if(currGraphic.parent.parent.parent.constructor.name=="Cell")
     {
         var targetHeight = currGraphic.parent.parent.parent.height;
            currGraphic.parent.absoluteVerticalScale = 0.1;
          
            var gb = currGraphic.parent.geometricBounds;
            gb[2] = gb[0]+targetHeight*0.9;
           currGraphic.parent.geometricBounds = gb;
          
           currGraphic.fit(FitOptions.PROPORTIONALLY);
           currGraphic.parent.fit(FitOptions.FRAME_TO_CONTENT);
     }
 }catch(e){}
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
хотя вот и с шириной

Код:
var docRef = app.activeDocument;

var allGraphics = docRef.allGraphics;
 
for(var i=0;i<allGraphics.length;i++)
 try{
     var currGraphic = allGraphics[i];
     if(currGraphic.parent.parent.parent.constructor.name=="Cell")
     {
         var targetHeight = currGraphic.parent.parent.parent.height;
         var targetWidth = currGraphic.parent.parent.parent.width;
            currGraphic.parent.absoluteVerticalScale = 0.1;
          
            var gb = currGraphic.parent.geometricBounds;
            gb[2] = gb[0]+targetHeight*0.9;
            gb[3] = gb[1]+targetWidth*0.9;
           currGraphic.parent.geometricBounds = gb;
          
           currGraphic.fit(FitOptions.PROPORTIONALLY);
           currGraphic.parent.fit(FitOptions.FRAME_TO_CONTENT);
     }
 }catch(e){}
 
  • Спасибо
Реакции: Linxy, LeonidB и _MBK_

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17
В общем-то да, помогло. Но какие-то еще фреймы в этих ячейках завелись)
А простите за невежество, что дальше с этим кодом делать? Я как-то скрипты видел только в виде фрмата jsx в основном)
 

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17
Ура, все получилось! Большое спасибо!
 

Linxy

Девушка с битой
10 лет на форуме
Сообщения
2 277
Реакции
3 836
Очень хорошо, что мир не без добрых людей и скрипт помог.
Но на всякий случай напомню, что если поставить высоту ячейки не «Ровно» (Exactly), а «Не менее» (At Least), то ячейки сами растянутся по высоте содержимого.
1570500709746.png
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Кстати да. Но кто в 3 ночи об этом вспомнит...
 

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17
Очень хорошо, что мир не без добрых людей и скрипт помог.
Но на всякий случай напомню, что если поставить высоту ячейки не «Ровно» (Exactly), а «Не менее» (At Least), то ячейки сами растянутся по высоте содержимого.

Да, так и есть. Но это проблему не очень решает. Потому что вложенные картинки потом надо все равно долго и нудно вручную форматировать, а их тысячи. А скрипт решает! 'alil'
 
  • Спасибо
Реакции: Skvoznyak

Йожег

без телевизора
12 лет на форуме
Сообщения
8 836
Реакции
4 275

Не по теме:
В печать похоже пойдет утоптанный ногой максимально ужатый пипец :(
 

stary_dobry

Участник
Топикстартер
Сообщения
203
Реакции
17

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

Linxy

Девушка с битой
10 лет на форуме
Сообщения
2 277
Реакции
3 836
Кстати да. Но кто в 3 ночи об этом вспомнит...
Это да, но к пяти утра такие идеи уже сами приходят))))
Да, так и есть. Но это проблему не очень решает. Потому что вложенные картинки потом надо все равно долго и нудно вручную форматировать, а их тысячи. А скрипт решает! 'alil'
Скрипт в любом случае удобнее. Чем меньше человеческого фактора, тем лучше.
Линкси снова демонстрирует чудеса телепатии :)
Так импортированные таблицы себя часто так ведут, с ними приходят точные настройки размеров ячейки и миллион красных точек)))