Skip to content

Instantly share code, notes, and snippets.

Avatar
🍕
Pizza...

Joonas Pääkkö joonaspaakko

🍕
Pizza...
View GitHub Profile
View single line or multiline text.jsx
// Test file:
// ====================================
// https://www.dropbox.com/s/dokdemxve0wd6yp/singleline%20or%20multiline%20text%20-%20test.psd?dl=0
// My results:
// ====================================
// (TRUE) 1. Singleline Point text
// (TRUE) 2. Singleline Paragraph text
// (FALSE) 3. Multiline Point text.Forced linebreak
// (FALSE) 4. Multiline Paragraph text. No forced line breaks.
View Dialog Example - Import Multiple PDF pages.jsx
/*
Code for Import https://scriptui.joonas.me — (Triple click to select):
{"activeId":1,"items":{"item-0":{"id":0,"type":"Dialog","parentId":false,"style":{"text":"Import Multiple PDF pages","preferredSize":[0,0],"margins":16,"orientation":"row","spacing":10,"alignChildren":["left","top"]}},"item-1":{"id":1,"type":"Panel","parentId":20,"style":{"text":"Page Selection","preferredSize":[0,205],"margins":10,"orientation":"column","spacing":10,"alignChildren":["left","top"],"alignment":null}},"item-2":{"id":2,"type":"StaticText","parentId":1,"style":{"text":"Import PDF Pages:","justify":"left","preferredSize":[0,0],"alignment":null}},"item-3":{"id":3,"type":"EditText","parentId":6,"style":{"text":"1","preferredSize":[60,0],"alignment":null}},"item-4":{"id":4,"type":"StaticText","parentId":6,"style":{"text":"thru","justify":"left","preferredSize":[0,0],"alignment":null}},"item-5":{"id":5,"type":"EditText","parentId":6,"style":{"text":"1","preferredSize":[60,0],"alignment":null}},"item-6":{"id":6,"type":"Group","
View Dialog Example - Export Layers Inside Selected Group.jsx
/*
Code for Import https://scriptui.joonas.me — (Triple click to select):
{"activeId":6,"items":{"item-0":{"id":0,"type":"Dialog","parentId":false,"style":{"text":"Export Layers Inside Selected Group","preferredSize":[0,0],"margins":16,"orientation":"column","spacing":10,"alignChildren":["center","top"]}},"item-1":{"id":1,"type":"Checkbox","parentId":6,"style":{"text":"PSD","preferredSize":[0,0],"alignment":null}},"item-2":{"id":2,"type":"Checkbox","parentId":6,"style":{"text":"TIFF","preferredSize":[0,0],"alignment":null}},"item-3":{"id":3,"type":"Checkbox","parentId":6,"style":{"text":"JPEG","preferredSize":[0,0],"alignment":null,"checked":true}},"item-4":{"id":4,"type":"Checkbox","parentId":6,"style":{"text":"PNG","preferredSize":[0,0],"alignment":null}},"item-5":{"id":5,"type":"Checkbox","parentId":6,"style":{"text":"PDF","preferredSize":[0,0],"alignment":null}},"item-6":{"id":6,"type":"Panel","parentId":9,"style":{"text":"File format","preferredSize":[0,0],"margins":10,"orientation":"row","spacing":10,
@joonaspaakko
joonaspaakko / SaveTo (PS-AI).jsx
Last active Nov 3, 2021
SaveTo.jsx script (v.1.3.) for Photoshop and Illustrator. The idea is that it exports the work file and the production file at the same time, saving some time and effort.
View SaveTo (PS-AI).jsx
// https://gist.github.com/joonaspaakko/b878d993b038b98b8ca78cc859916af4
// The idea is that it exports the work file and the production file (or a preview file) at the same time saving some time and effort.
// - This has been tested in Photoshop CC and Illustrator CC. It used to work in CS3, but I'm fairly sure I've changed the code enough at this point to break it for older versions.
// - Has a simple dialog where you can rename the file or leave it as it is.
// - If document has been saved, the script will suggest saving in the same path, otherwise it will default to what's set in the variable "newDocPath".
// - Photoshop saves .jpg and .psd
// - Illustrator saves .pdf and .ai and there's now the additional jpg option
@joonaspaakko
joonaspaakko / Apply Master To Empty Pages.jsx
Last active May 21, 2021
Indesign script that applies a master page to all empty pages in the document.
View Apply Master To Empty Pages.jsx
// https://gist.github.com/joonaspaakko/f16b47be887a2058cd0c0ac6e7ab0343
// The script doesn't check for page items inside the current master.
// That means the current master could be filled with all kinds of graphics and this script considers it an empty page.
var master;
if (app.documents.length > 0) init();
function init() {
@joonaspaakko
joonaspaakko / Select Parent Group.jsx
Last active Feb 17, 2018
Selects the parent group of the currently selected layer.
View Select Parent Group.jsx
// https://gist.github.com/joonaspaakko/e8b5d577953e25c0a86903a76a7f4bba
#target photoshop
var doc = app.activeDocument;
var layerParent = doc.activeLayer.parent;
if ( layerParent !== doc ) doc.activeLayer = layerParent;
@joonaspaakko
joonaspaakko / Select Sibling Layers.jsx
Last active Feb 8, 2018
Select Sibling Layers.jsx Photoshop Script - Selects the sibling layers.
View Select Sibling Layers.jsx
//https://gist.github.com/joonaspaakko/d4449fd5ef211df7850cab748bf9b8f6
#target photoshop
if ( app.activeDocument.activeLayer.parent !== app.activeDocument ) {
app.activeDocument.suspendHistory( "Select Sibling Layers.jsx", "init();" );
}
function init() {
var doc = app.activeDocument;
@joonaspaakko
joonaspaakko / Select Child Layers.jsx
Last active Apr 12, 2019
Select Child Layers.jsx Photoshop Script - Selects the first level of layers inside the currently active group.
View Select Child Layers.jsx
// https://gist.github.com/joonaspaakko/1add5c6a905216740c9c922a657636e1
#target photoshop
if ( app.activeDocument.activeLayer.typename == 'LayerSet' ) {
app.activeDocument.suspendHistory( "Select Child Layers.jsx", "init();" );
}
function init() {
var doc = app.activeDocument;
View jsonball.rb
require 'json'
require 'net/http'
# JSON parser tag, creating map for use in jekyll markdown
# Alex.Heneveld @ Cloudsoft Corp (remove spaces and add the .com)
# Released under APL 2.0
# usage: {% jsonball varname from TYPE PARAM %}
#
# where TYPE is one of {data,var,file,page}, described below
@joonaspaakko
joonaspaakko / Save as JPEG.jsx
Created Mar 29, 2016
Saves a file in Photoshop as jpg. File path is based on current document and filename is based on current layer.
View Save as JPEG.jsx
var doc = app.activeDocument;
var fileName = doc.activeLayer.name;
var outputLocation= File( doc.path + "/" + fileName );
save( outputLocation );
function save( outputLocation ) {
var saveOptions = new ExportOptionsSaveForWeb;