Вы должны определить что нужно сохранить, а как .
Что сохранить
Вам необходимо определить, что важно для вас, например, цвет может быть с информацией о прозрачности или без нее.
Текст может быть простой строкой или объектом, содержащим такую информацию, как тип символа, размер, оформление (жирный, подчеркивание ...).
Как сохранить
Вам нужно определить формат для каждой информации (например, цвет можно сохранить с его именем "red"
или его шестнадцатеричным значением "#FF0000"
или может быть ссылкой на пользовательскую переменную "mainColorTemplate1"
).
Вам также необходимо определить формат файла (xml, json, пользовательский двоичный файл, файл свойств, yaml ...).
Предлагаю попробовать самое простое решение для ваших знаний. Очень просто хранить все данные в объекте и сохранять их как JSon, используя такие библиотеки, как GSon или Faster Jackson.
Вот возможный формат в json:
{
"labels": [
{
"text":"My first label",
"x":2,
"y":1,
"color":"#FF0000"
},
{
"text":"My Second label",
"x":4,
"y":3,
"color":"#FFFF00"
}
]
}