Как вы масштабируете изображения до 60% в Wordpress 3.9?
В предыдущих версиях Wordpress изображения можно было автоматически масштабировать до 60% одним щелчком мыши. Теперь в Wordpress 3.9 единственным автоматическим масштабированием является Thumbnail, Medium и Full Size. Я мог бы выбрать нестандартный размер или перетащить его до приблизительного размера, который я хочу, но нестандартный размер требует, чтобы я сам вычислял 60%, а перетаскивание - неточно.
Все мои изображения имеют разную высоту и ширину. Это изображения с письменным шрифтом, поэтому размер шрифта должен быть одинаковым для каждого изображения, даже если высота и ширина различны. В прошлом я просто отображал все мои изображения на 60%. Есть ли способ сделать это в Wordpress 3.9?
1 ответ
Так как я не мог найти лучший долгосрочный метод, я просто написал некоторый Java-код для этой работы. Таким образом, я могу просто вырезать и вставить из представления HTML.
import java.util.Scanner;
public class ImageResizer {
public static void main(String[] args) {
Scanner userInput = new Scanner(System.in);
String inputString;
String outputString;
System.out.print("Default resize is 60%\n");
System.out.print("Type \"exit\" to quit: \n\n");
do {
// input something like:
// width="208" height="425"
System.out.print("Enter html: ");
inputString = userInput.nextLine();
outputString = resize(inputString);
System.out.print(outputString + "\n");
} while (!inputString.equals("exit"));
}
public static String resize(String myString) {
final int RESIZE_PERCENT = 60;
// parse input string
String delims = "[ ]+"; // spaces
String[] tokens = myString.split(delims);
for (int i = 0; i < tokens.length; i++) {
if (tokens[i].startsWith("width") || tokens[i].startsWith("height")) {
// extract the height/width number
String subDelims = "[\"]"; // quote mark
String[] subTokens = tokens[i].split(subDelims);
int number = Integer.parseInt(subTokens[1]);
number = number * RESIZE_PERCENT / 100;
// rebuild string
tokens[i] = subTokens[0] + "\"" + number + "\"";
}
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < tokens.length; i++) {
sb.append(tokens[i]);
if ((i + 1) < tokens.length) {
sb.append(" ");
}
}
return sb.toString();
}
}