diff options
69 files changed, 4682 insertions, 3721 deletions
@@ -12,4 +12,5 @@ messages.po /DEBUG .pydevproject .project - +/debug.log +/debug.svg @@ -7,7 +7,6 @@ ARCH:=$(shell uname -m) dist: distclean locales inx bin/build-dist $(EXTENSIONS) - cp inx/*.inx dist cp -a images/examples dist/inkstitch cp -a palettes dist/inkstitch cp -a symbols dist/inkstitch @@ -15,11 +14,16 @@ dist: distclean locales inx cp -a icons dist/inkstitch/bin cp -a locales dist/inkstitch/bin cp -a print dist/inkstitch/bin - if [ "$$BUILD" = "windows" ]; then \ - cd dist; zip -r ../inkstitch-$(VERSION)-win32.zip *; \ - else \ - cd dist; tar zcf ../inkstitch-$(VERSION)-$(OS)-$(ARCH).tar.gz *; \ - fi + for d in inx/*; do \ + lang=$${d%.*}; \ + lang=$${lang#*/}; \ + cp $$d/*.inx dist; \ + if [ "$$BUILD" = "windows" ]; then \ + cd dist; zip -r ../inkstitch-$(VERSION)-win32-$$lang.zip *; cd ..; \ + else \ + cd dist; tar zcf ../inkstitch-$(VERSION)-$(OS)-$(ARCH)-$$lang.tar.gz *; cd ..; \ + fi; \ + done distclean: rm -rf build dist inx locales *.spec *.tar.gz *.zip diff --git a/bin/generate-inx-files b/bin/generate-inx-files index a16fb32e..44edea15 100755 --- a/bin/generate-inx-files +++ b/bin/generate-inx-files @@ -11,6 +11,8 @@ sys.path.append(parent_dir) # try find add inkex.py et al. as well sys.path.append(os.path.join(parent_dir, "inkscape", "share", "extensions")) sys.path.append(os.path.join("/usr/share/inkscape/extensions")) +# default inkex.py location on macOS +sys.path.append("/Applications/Inkscape.app/Contents/Resources/share/inkscape/extensions/") from lib.inx import generate_inx_files diff --git a/inkstitch.py b/inkstitch.py index 9b040265..840cdc58 100644 --- a/inkstitch.py +++ b/inkstitch.py @@ -7,16 +7,7 @@ from argparse import ArgumentParser from lib import extensions from lib.utils import save_stderr, restore_stderr - - -logger = logging.getLogger('shapely.geos') -logger.setLevel(logging.DEBUG) -shapely_errors = StringIO() -ch = logging.StreamHandler(shapely_errors) -ch.setLevel(logging.DEBUG) -formatter = logging.Formatter('%(name)s - %(levelname)s - %(message)s') -ch.setFormatter(formatter) -logger.addHandler(ch) +import lib.debug as debug logger = logging.getLogger('shapely.geos') @@ -34,16 +25,7 @@ parser.add_argument("--extension") my_args, remaining_args = parser.parse_known_args() if os.path.exists(os.path.join(os.path.dirname(os.path.realpath(__file__)), "DEBUG")): - # How to debug Ink/Stitch: - # - # 1. Install LiClipse (liclipse.com) -- no need to install Eclipse first - # 2. Start debug server as described here: http://www.pydev.org/manual_adv_remote_debugger.html - # * follow the "Note:" to enable the debug server menu item - # 3. Create a file named "DEBUG" next to inkstitch.py in your git clone. - # 4. Run any extension and PyDev will start debugging. - - import pydevd - pydevd.settrace() + debug.enable() extension_name = my_args.extension diff --git a/lib/debug.py b/lib/debug.py new file mode 100644 index 00000000..6ce67697 --- /dev/null +++ b/lib/debug.py @@ -0,0 +1,197 @@ +import atexit +from contextlib import contextmanager +from datetime import datetime +import os +import socket +import sys +import time + +from inkex import etree +import inkex +from simplestyle import formatStyle + +from svg import line_strings_to_path +from svg.tags import INKSCAPE_GROUPMODE, INKSCAPE_LABEL + + +def check_enabled(func): + def decorated(self, *args, **kwargs): + if self.enabled: + func(self, *args, **kwargs) + + return decorated + + +class Debug(object): + def __init__(self): + self.enabled = False + self.last_log_time = None + self.current_layer = None + self.group_stack = [] + + def enable(self): + self.enabled = True + self.init_log() + self.init_debugger() + self.init_svg() + + def init_log(self): + self.log_file = open(os.path.join(os.path.dirname(os.path.dirname(__file__)), "debug.log"), "w") + self.log("Debug logging enabled.") + + def init_debugger(self): + # How to debug Ink/Stitch: + # + # 1. Install LiClipse (liclipse.com) -- no need to install Eclipse first + # 2. Start debug server as described here: http://www.pydev.org/manual_adv_remote_debugger.html + # * follow the "Note:" to enable the debug server menu item + # 3. Create a file named "DEBUG" next to inkstitch.py in your git clone. + # 4. Run any extension and PyDev will start debugging. + + try: + import pydevd + except ImportError: + self.log("importing pydevd failed (debugger disabled)") + + # pydevd likes to shout about errors to stderr whether I want it to or not + with open(os.devnull, 'w') as devnull: + stderr = sys.stderr + sys.stderr = devnull + + try: + pydevd.settrace() + except socket.error, error: + self.log("Debugging: connection to pydevd failed: %s", error) + self.log("Be sure to run 'Start debugging server' in PyDev to enable debugging.") + else: + self.log("Enabled PyDev debugger.") + + sys.stderr = stderr + + def init_svg(self): + self.svg = etree.Element("svg", nsmap=inkex.NSS) + atexit.register(self.save_svg) + + def save_svg(self): + tree = etree.ElementTree(self.svg) + with open(os.path.join(os.path.dirname(os.path.dirname(__file__)), "debug.svg"), "w") as debug_svg: + tree.write(debug_svg) + + @check_enabled + def add_layer(self, name="Debug"): + layer = etree.Element("g", { + INKSCAPE_GROUPMODE: "layer", + INKSCAPE_LABEL: name, + "style": "display: none" + }) + self.svg.append(layer) + self.current_layer = layer + + @check_enabled + def open_group(self, name="Group"): + group = etree.Element("g", { + INKSCAPE_LABEL: name + }) + + self.log_svg_element(group) + self.group_stack.append(group) + + @check_enabled + def close_group(self): + if self.group_stack: + self.group_stack.pop() + + @check_enabled + def log(self, message, *args): + if self.last_log_time: + message = "(+%s) %s" % (datetime.now() - self.last_log_time, message) + + self.raw_log(message, *args) + + def raw_log(self, message, *args): + now = datetime.now() + timestamp = now.isoformat() + self.last_log_time = now + + print >> self.log_file, timestamp, message % args + self.log_file.flush() + + def time(self, func): + def decorated(*args, **kwargs): + if self.enabled: + self.raw_log("entering %s()", func.func_name) + start = time.time() + + result = func(*args, **kwargs) + + if self.enabled: + end = time.time() + self.raw_log("leaving %s(), duration = %s", func.func_name, round(end - start, 6)) + + return result + + return decorated + + @check_enabled + def log_svg_element(self, element): + if self.current_layer is None: + self.add_layer() + + if self.group_stack: + self.group_stack[-1].append(element) + else: + self.current_layer.append(element) + + @check_enabled + def log_line_string(self, line_string, name=None, color=None): + """Add a Shapely LineString to the SVG log.""" + self.log_line_strings([line_string], name, color) + + @check_enabled + def log_line_strings(self, line_strings, name=None, color=None): + path = line_strings_to_path(line_strings) + path.set('style', formatStyle({"stroke": color or "#000000", "stroke-width": "0.3"})) + + if name is not None: + path.set(INKSCAPE_LABEL, name) + + self.log_svg_element(path) + + @check_enabled + def log_line(self, start, end, name="line", color=None): + self.log_svg_element(etree.Element("path", { + "d": "M%s,%s %s,%s" % (start + end), + "style": formatStyle({"stroke": color or "#000000", "stroke-width": "0.3"}), + INKSCAPE_LABEL: name + })) + + @check_enabled + def log_graph(self, graph, name="Graph", color=None): + d = "" + + for edge in graph.edges: + d += "M%s,%s %s,%s" % (edge[0] + edge[1]) + + self.log_svg_element(etree.Element("path", { + "d": d, + "style": formatStyle({"stroke": color or "#000000", "stroke-width": "0.3"}), + INKSCAPE_LABEL: name + })) + + @contextmanager + def time_this(self, label="code block"): + if self.enabled: + start = time.time() + self.raw_log("begin %s", label) + + yield + + if self.enabled: + self.raw_log("completed %s, duration = %s", label, time.time() - start) + + +debug = Debug() + + +def enable(): + debug.enable() diff --git a/lib/elements/auto_fill.py b/lib/elements/auto_fill.py index b8d8d15f..62d3493c 100644 --- a/lib/elements/auto_fill.py +++ b/lib/elements/auto_fill.py @@ -1,4 +1,5 @@ import math +import sys import traceback from shapely import geometry as shgeo @@ -118,6 +119,30 @@ class AutoFill(Fill): def expand(self): return self.get_float_param('expand_mm', 0) + @property + @param('underpath', + _('Underpath'), + tooltip=_('Travel inside the shape when moving from section to section. Underpath ' + 'stitches avoid traveling in the direction of the row angle so that they ' + 'are not visible. This gives them a jagged appearance.'), + type='boolean', + default=True) + def underpath(self): + return self.get_boolean_param('underpath', True) + + @property + @param( + 'underlay_underpath', + _('Underpath'), + tooltip=_('Travel inside the shape when moving from section to section. Underpath ' + 'stitches avoid traveling in the direction of the row angle so that they ' + 'are not visible. This gives them a jagged appearance.'), + group=_('AutoFill Underlay'), + type='boolean', + default=True) + def underlay_underpath(self): + return self.get_boolean_param('underlay_underpath', True) + def shrink_or_grow_shape(self, amount): if amount: shape = self.shape.buffer(amount) @@ -168,7 +193,8 @@ class AutoFill(Fill): self.running_stitch_length, self.staggers, self.fill_underlay_skip_last, - starting_point)) + starting_point, + underpath=self.underlay_underpath)) starting_point = stitches[-1] stitches.extend(auto_fill(self.fill_shape, @@ -180,11 +206,16 @@ class AutoFill(Fill): self.staggers, self.skip_last, starting_point, - ending_point)) + ending_point, + self.underpath)) except InkstitchException, exc: # for one of our exceptions, just print the message self.fatal(_("Unable to autofill: ") + str(exc)) except Exception, exc: + if hasattr(sys, 'gettrace') and sys.gettrace(): + # if we're debugging, let the exception bubble up + raise + # for an uncaught exception, give a little more info so that they can create a bug report message = "" message += _("Error during autofill! This means that there is a problem with Ink/Stitch.") diff --git a/lib/extensions/base.py b/lib/extensions/base.py index 8d45f790..c77aeacd 100644 --- a/lib/extensions/base.py +++ b/lib/extensions/base.py @@ -2,6 +2,7 @@ from collections import MutableMapping from copy import deepcopy import json import re +import os import inkex from stringcase import snakecase @@ -188,10 +189,7 @@ class InkstitchExtension(inkex.Effect): def get_base_file_name(self): svg_filename = self.document.getroot().get(inkex.addNS('docname', 'sodipodi'), "embroidery.svg") - if svg_filename.endswith('.svg'): - svg_filename = svg_filename[:-4] - - return svg_filename + return os.path.splitext(svg_filename)[0] def uniqueId(self, prefix, make_new_id=True): """Override inkex.Effect.uniqueId with a nicer naming scheme.""" diff --git a/lib/extensions/convert_to_satin.py b/lib/extensions/convert_to_satin.py index 2b586e36..1227b207 100644 --- a/lib/extensions/convert_to_satin.py +++ b/lib/extensions/convert_to_satin.py @@ -40,6 +40,7 @@ class ConvertToSatin(InkstitchExtension): index = parent.index(element.node) correction_transform = get_correction_transform(element.node) style_args = self.join_style_args(element) + path_style = self.path_style(element) for path in element.paths: path = self.remove_duplicate_points(path) @@ -62,7 +63,7 @@ class ConvertToSatin(InkstitchExtension): return - parent.insert(index, self.satin_to_svg_node(rails, rungs, correction_transform)) + parent.insert(index, self.satin_to_svg_node(rails, rungs, correction_transform, path_style)) parent.remove(element.node) @@ -273,7 +274,11 @@ class ConvertToSatin(InkstitchExtension): return rungs - def satin_to_svg_node(self, rails, rungs, correction_transform): + def path_style(self, element): + color = element.get_style('stroke', '#000000') + return "stroke:%s;stroke-width:1px;fill:none" % (color) + + def satin_to_svg_node(self, rails, rungs, correction_transform, path_style): d = "" for path in chain(rails, rungs): d += "M" @@ -284,7 +289,7 @@ class ConvertToSatin(InkstitchExtension): return inkex.etree.Element(SVG_PATH_TAG, { "id": self.uniqueId("path"), - "style": "stroke:#000000;stroke-width:1px;fill:none", + "style": path_style, "transform": correction_transform, "d": d, "embroider_satin_column": "true", diff --git a/lib/extensions/print_pdf.py b/lib/extensions/print_pdf.py index c718fa09..4913a32a 100644 --- a/lib/extensions/print_pdf.py +++ b/lib/extensions/print_pdf.py @@ -353,7 +353,13 @@ class Print(InkstitchExtension): template = env.get_template('index.html') return template.render( - view={'client_overview': False, 'client_detailedview': False, 'operator_overview': True, 'operator_detailedview': True}, + view={ + 'client_overview': False, + 'client_detailedview': False, + 'operator_overview': True, + 'operator_detailedview': True, + 'custom_page': False + }, logo={'src': '', 'title': 'LOGO'}, date=date.today(), client="", diff --git a/lib/gui/simulator.py b/lib/gui/simulator.py index c07a7af3..7184a012 100644 --- a/lib/gui/simulator.py +++ b/lib/gui/simulator.py @@ -68,14 +68,21 @@ class ControlPanel(wx.Panel): self.restartBtn = wx.Button(self, -1, label=_('Restart')) self.restartBtn.Bind(wx.EVT_BUTTON, self.animation_restart) self.restartBtn.SetToolTip(_('Restart (R)')) + self.nppBtn = wx.ToggleButton(self, -1, label=_('O')) + self.nppBtn.Bind(wx.EVT_TOGGLEBUTTON, self.toggle_npp) + self.nppBtn.SetToolTip(_('Display needle penetration point (O)')) self.quitBtn = wx.Button(self, -1, label=_('Quit')) self.quitBtn.Bind(wx.EVT_BUTTON, self.animation_quit) self.quitBtn.SetToolTip(_('Quit (Q)')) self.slider = wx.Slider(self, -1, value=1, minValue=1, maxValue=2, style=wx.SL_HORIZONTAL | wx.SL_LABELS) self.slider.Bind(wx.EVT_SLIDER, self.on_slider) - self.stitchBox = IntCtrl(self, -1, value=1, min=1, max=2, limited=True, allow_none=False) - self.stitchBox.Bind(wx.EVT_TEXT, self.on_stitch_box) + self.stitchBox = IntCtrl(self, -1, value=1, min=1, max=2, limited=True, allow_none=True, style=wx.TE_PROCESS_ENTER) + self.stitchBox.Bind(wx.EVT_LEFT_DOWN, self.on_stitch_box_focus) + self.stitchBox.Bind(wx.EVT_SET_FOCUS, self.on_stitch_box_focus) + self.stitchBox.Bind(wx.EVT_TEXT_ENTER, self.on_stitch_box_focusout) + self.stitchBox.Bind(wx.EVT_KILL_FOCUS, self.on_stitch_box_focusout) + self.Bind(wx.EVT_LEFT_DOWN, self.on_stitch_box_focusout) # Layout self.vbSizer = vbSizer = wx.BoxSizer(wx.VERTICAL) @@ -91,6 +98,7 @@ class ControlPanel(wx.Panel): hbSizer2.Add(self.directionBtn, 0, wx.EXPAND | wx.ALL, 2) hbSizer2.Add(self.pauseBtn, 0, wx.EXPAND | wx.ALL, 2) hbSizer2.Add(self.restartBtn, 0, wx.EXPAND | wx.ALL, 2) + hbSizer2.Add(self.nppBtn, 0, wx.EXPAND | wx.ALL, 2) hbSizer2.Add(self.quitBtn, 0, wx.EXPAND | wx.ALL, 2) vbSizer.Add(hbSizer2, 0, wx.EXPAND | wx.ALL, 3) self.SetSizerAndFit(vbSizer) @@ -116,19 +124,20 @@ class ControlPanel(wx.Panel): (wx.ACCEL_NORMAL, wx.WXK_SUBTRACT, self.animation_one_stitch_backward), (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_SUBTRACT, self.animation_one_stitch_backward), (wx.ACCEL_NORMAL, ord('r'), self.animation_restart), + (wx.ACCEL_NORMAL, ord('o'), self.on_toggle_npp_shortcut), (wx.ACCEL_NORMAL, ord('p'), self.on_pause_start_button), (wx.ACCEL_NORMAL, wx.WXK_SPACE, self.on_pause_start_button), (wx.ACCEL_NORMAL, ord('q'), self.animation_quit)] - accel_entries = [] + self.accel_entries = [] for shortcut_key in shortcut_keys: eventId = wx.NewId() - accel_entries.append((shortcut_key[0], shortcut_key[1], eventId)) + self.accel_entries.append((shortcut_key[0], shortcut_key[1], eventId)) self.Bind(wx.EVT_MENU, shortcut_key[2], id=eventId) - accel_table = wx.AcceleratorTable(accel_entries) - self.SetAcceleratorTable(accel_table) + self.accel_table = wx.AcceleratorTable(self.accel_entries) + self.SetAcceleratorTable(self.accel_table) self.SetFocus() def set_drawing_panel(self, drawing_panel): @@ -186,6 +195,8 @@ class ControlPanel(wx.Panel): if self.drawing_panel: self.drawing_panel.set_current_stitch(stitch) + self.parent.SetFocus() + def on_current_stitch(self, stitch, command): if self.current_stitch != stitch: self.current_stitch = stitch @@ -193,8 +204,20 @@ class ControlPanel(wx.Panel): self.stitchBox.SetValue(stitch) self.statusbar.SetStatusText(COMMAND_NAMES[command], 1) - def on_stitch_box(self, event): + def on_stitch_box_focus(self, event): + self.animation_pause() + self.SetAcceleratorTable(wx.AcceleratorTable([])) + event.Skip() + + def on_stitch_box_focusout(self, event): + self.SetAcceleratorTable(self.accel_table) stitch = self.stitchBox.GetValue() + self.parent.SetFocus() + + if stitch is None: + stitch = 1 + self.stitchBox.SetValue(1) + self.slider.SetValue(stitch) if self.drawing_panel: @@ -241,6 +264,15 @@ class ControlPanel(wx.Panel): def animation_restart(self, event): self.drawing_panel.restart() + def on_toggle_npp_shortcut(self, event): + self.nppBtn.SetValue(not self.nppBtn.GetValue()) + self.toggle_npp(event) + + def toggle_npp(self, event): + if self.pauseBtn.GetLabel() == _('Start'): + stitch = self.stitchBox.GetValue() + self.drawing_panel.set_current_stitch(stitch) + class DrawingPanel(wx.Panel): """""" @@ -346,11 +378,13 @@ class DrawingPanel(wx.Panel): stitch += len(stitches) if len(stitches) > 1: canvas.DrawLines(stitches) + self.draw_needle_penetration_points(canvas, pen, stitches) last_stitch = stitches[-1] else: stitches = stitches[:self.current_stitch - stitch] if len(stitches) > 1: canvas.DrawLines(stitches) + self.draw_needle_penetration_points(canvas, pen, stitches) last_stitch = stitches[-1] break self.last_frame_duration = time.time() - start @@ -402,6 +436,12 @@ class DrawingPanel(wx.Panel): canvas.SetFont(wx.Font(12, wx.DEFAULT, wx.NORMAL, wx.NORMAL), wx.Colour((0, 0, 0))) canvas.DrawText("%s mm" % scale_width_mm, scale_lower_left_x, scale_lower_left_y + 5) + def draw_needle_penetration_points(self, canvas, pen, stitches): + if self.control_panel.nppBtn.GetValue(): + npp_pen = wx.Pen(pen.GetColour(), width=int(0.3 * PIXELS_PER_MM * self.PIXEL_DENSITY)) + canvas.SetPen(npp_pen) + canvas.StrokeLineSegments(stitches, stitches) + def clear(self): dc = wx.ClientDC(self) dc.Clear() @@ -666,6 +706,7 @@ class EmbroiderySimulator(wx.Frame): if self.on_close_hook: self.on_close_hook() + self.SetFocus() self.Destroy() def go(self): @@ -736,7 +777,14 @@ class SimulatorPreview(Thread): self.update_patches() def update_patches(self): - patches = self.parent.generate_patches(self.refresh_needed) + try: + patches = self.parent.generate_patches(self.refresh_needed) + except: # noqa: E722 + # If something goes wrong when rendering patches, it's not great, + # but we don't really want the simulator thread to crash. Instead, + # just swallow the exception and abort. It'll show up when they + # try to actually embroider the shape. + return if patches and not self.refresh_needed.is_set(): stitch_plan = patches_to_stitch_plan(patches) diff --git a/lib/inx/utils.py b/lib/inx/utils.py index a22b1892..1dc96829 100644 --- a/lib/inx/utils.py +++ b/lib/inx/utils.py @@ -1,3 +1,4 @@ +import errno import os import gettext from os.path import dirname @@ -28,8 +29,16 @@ def build_environment(): def write_inx_file(name, contents): - inx_file_name = "inkstitch_%s_%s.inx" % (name, current_locale) - with open(os.path.join(inx_path, inx_file_name), 'w') as inx_file: + inx_locale_dir = os.path.join(inx_path, current_locale) + + try: + os.makedirs(inx_locale_dir) + except OSError as e: + if e.errno != errno.EEXIST: + raise + + inx_file_name = "inkstitch_%s.inx" % name + with open(os.path.join(inx_locale_dir, inx_file_name), 'w') as inx_file: print >> inx_file, contents.encode("utf-8") diff --git a/lib/stitches/auto_fill.py b/lib/stitches/auto_fill.py index 0f07b795..9d946ae2 100644 --- a/lib/stitches/auto_fill.py +++ b/lib/stitches/auto_fill.py @@ -1,21 +1,22 @@ -from collections import deque -from itertools import groupby, izip -import sys +# -*- coding: UTF-8 -*- + +from itertools import groupby, chain +import math import networkx -import shapely +from shapely import geometry as shgeo +from shapely.ops import snap +from shapely.strtree import STRtree +from ..debug import debug from ..exceptions import InkstitchException from ..i18n import _ -from ..utils.geometry import Point as InkstitchPoint, cut -from .fill import intersect_region_with_grating, row_num, stitch_row +from ..svg import PIXELS_PER_MM +from ..utils.geometry import Point as InkstitchPoint +from .fill import intersect_region_with_grating, stitch_row from .running_stitch import running_stitch -class MaxQueueLengthExceeded(InkstitchException): - pass - - class InvalidPath(InkstitchException): pass @@ -45,6 +46,7 @@ class PathEdge(object): return self.key == self.SEGMENT_KEY +@debug.time def auto_fill(shape, angle, row_spacing, @@ -54,18 +56,17 @@ def auto_fill(shape, staggers, skip_last, starting_point, - ending_point=None): - stitches = [] + ending_point=None, + underpath=True): - rows_of_segments = intersect_region_with_grating(shape, angle, row_spacing, end_row_spacing) - segments = [segment for row in rows_of_segments for segment in row] + fill_stitch_graph = build_fill_stitch_graph(shape, angle, row_spacing, end_row_spacing) + check_graph(fill_stitch_graph, shape, max_stitch_length) + travel_graph = build_travel_graph(fill_stitch_graph, shape, angle, underpath) + path = find_stitch_path(fill_stitch_graph, travel_graph, starting_point, ending_point) + result = path_to_stitches(path, travel_graph, fill_stitch_graph, angle, row_spacing, + max_stitch_length, running_stitch_length, staggers, skip_last) - graph = build_graph(shape, segments, angle, row_spacing, max_stitch_length) - path = find_stitch_path(graph, segments, starting_point, ending_point) - - stitches.extend(path_to_stitches(graph, path, shape, angle, row_spacing, max_stitch_length, running_stitch_length, staggers, skip_last)) - - return stitches + return result def which_outline(shape, coords): @@ -78,11 +79,12 @@ def which_outline(shape, coords): # I'd use an intersection check, but floating point errors make it # fail sometimes. - point = shapely.geometry.Point(*coords) - outlines = enumerate(list(shape.boundary)) - closest = min(outlines, key=lambda index_outline: index_outline[1].distance(point)) + point = shgeo.Point(*coords) + outlines = list(shape.boundary) + outline_indices = range(len(outlines)) + closest = min(outline_indices, key=lambda index: outlines[index].distance(point)) - return closest[0] + return closest def project(shape, coords, outline_index): @@ -92,10 +94,11 @@ def project(shape, coords, outline_index): """ outline = list(shape.boundary)[outline_index] - return outline.project(shapely.geometry.Point(*coords)) + return outline.project(shgeo.Point(*coords)) -def build_graph(shape, segments, angle, row_spacing, max_stitch_length): +@debug.time +def build_fill_stitch_graph(shape, angle, row_spacing, end_row_spacing): """build a graph representation of the grating segments This function builds a specialized graph (as in graph theory) that will @@ -128,6 +131,12 @@ def build_graph(shape, segments, angle, row_spacing, max_stitch_length): path must exist. """ + debug.add_layer("auto-fill fill stitch") + + # Convert the shape into a set of parallel line segments. + rows_of_segments = intersect_region_with_grating(shape, angle, row_spacing, end_row_spacing) + segments = [segment for row in rows_of_segments for segment in row] + graph = networkx.MultiGraph() # First, add the grating segments as edges. We'll use the coordinates @@ -135,241 +144,250 @@ def build_graph(shape, segments, angle, row_spacing, max_stitch_length): for segment in segments: # networkx allows us to label nodes with arbitrary data. We'll # mark this one as a grating segment. - graph.add_edge(*segment, key="segment") + graph.add_edge(*segment, key="segment", underpath_edges=[]) + + tag_nodes_with_outline_and_projection(graph, shape, graph.nodes()) + add_edges_between_outline_nodes(graph, duplicate_every_other=True) + + debug.log_graph(graph, "graph") + + return graph + - for node in graph.nodes(): +def tag_nodes_with_outline_and_projection(graph, shape, nodes): + for node in nodes: outline_index = which_outline(shape, node) outline_projection = project(shape, node, outline_index) - # Tag each node with its index and projection. - graph.add_node(node, index=outline_index, projection=outline_projection) + graph.add_node(node, outline=outline_index, projection=outline_projection) + + +def add_edges_between_outline_nodes(graph, duplicate_every_other=False): + """Add edges around the outlines of the graph, connecting sequential nodes. + + This function assumes that all nodes in the graph are on the outline of the + shape. It figures out which nodes are next to each other on the shape and + connects them in the graph with an edge. + + Edges are tagged with their outline number and their position on that + outline. + """ nodes = list(graph.nodes(data=True)) # returns a list of tuples: [(node, {data}), (node, {data}) ...] - nodes.sort(key=lambda node: (node[1]['index'], node[1]['projection'])) + nodes.sort(key=lambda node: (node[1]['outline'], node[1]['projection'])) - for outline_index, nodes in groupby(nodes, key=lambda node: node[1]['index']): + for outline_index, nodes in groupby(nodes, key=lambda node: node[1]['outline']): nodes = [node for node, data in nodes] - # heuristic: change the order I visit the nodes in the outline if necessary. - # If the start and endpoints are in the same row, I can't tell which row - # I should treat it as being in. - for i in xrange(len(nodes)): - row0 = row_num(InkstitchPoint(*nodes[0]), angle, row_spacing) - row1 = row_num(InkstitchPoint(*nodes[1]), angle, row_spacing) - - if row0 == row1: - nodes = nodes[1:] + [nodes[0]] - else: - break - - # heuristic: it's useful to try to keep the duplicated edges in the same rows. - # this prevents the BFS from having to search a ton of edges. - min_row_num = min(row0, row1) - if min_row_num % 2 == 0: - edge_set = 0 - else: - edge_set = 1 - # add an edge between each successive node for i, (node1, node2) in enumerate(zip(nodes, nodes[1:] + [nodes[0]])): - graph.add_edge(node1, node2, key="outline") + data = dict(outline=outline_index, index=i) + graph.add_edge(node1, node2, key="outline", **data) - # duplicate every other edge around this outline - if i % 2 == edge_set: - graph.add_edge(node1, node2, key="extra") + if i % 2 == 0: + graph.add_edge(node1, node2, key="extra", **data) - check_graph(graph, shape, max_stitch_length) - return graph +@debug.time +def build_travel_graph(fill_stitch_graph, shape, fill_stitch_angle, underpath): + """Build a graph for travel stitches. + This graph will be used to find a stitch path between two spots on the + outline of the shape. -def check_graph(graph, shape, max_stitch_length): - if networkx.is_empty(graph) or not networkx.is_eulerian(graph): - if shape.area < max_stitch_length ** 2: - raise InvalidPath(_("This shape is so small that it cannot be filled with rows of stitches. " - "It would probably look best as a satin column or running stitch.")) - else: - raise InvalidPath(_("Cannot parse shape. " - "This most often happens because your shape is made up of multiple sections that aren't connected.")) + If underpath is False, we'll just be traveling + around the outline of the shape, so the graph will only contain outline + edges. + If underpath is True, we'll also allow travel inside the shape. We'll + fill the shape with a cross-hatched grid of lines. We'll construct a + graph from them and use a shortest path algorithm to construct travel + stitch paths in travel(). -def node_list_to_edge_list(node_list): - return zip(node_list[:-1], node_list[1:]) + When underpathing, we "encourage" the travel() function to travel inside + the shape rather than on the boundary. We do this by weighting the + boundary edges extra so that they're more "expensive" in the shortest path + calculation. We also weight the interior edges extra proportional to + how close they are to the boundary. + """ + graph = networkx.MultiGraph() -def bfs_for_loop(graph, starting_node, max_queue_length=2000): - to_search = deque() - to_search.append((None, set())) + # Add all the nodes from the main graph. This will be all of the endpoints + # of the rows of stitches. Every node will be on the outline of the shape. + # They'll all already have their `outline` and `projection` tags set. + graph.add_nodes_from(fill_stitch_graph.nodes(data=True)) - while to_search: - if len(to_search) > max_queue_length: - raise MaxQueueLengthExceeded() + if underpath: + boundary_points, travel_edges = build_travel_edges(shape, fill_stitch_angle) - path, visited_edges = to_search.pop() + # This will ensure that a path traveling inside the shape can reach its + # target on the outline, which will be one of the points added above. + tag_nodes_with_outline_and_projection(graph, shape, boundary_points) - if path is None: - # This is the very first time through the loop, so initialize. - path = [] - ending_node = starting_node - else: - ending_node = path[-1][-1] + add_edges_between_outline_nodes(graph) - # get a list of neighbors paired with the key of the edge I can follow to get there - neighbors = [ - (node, key) - for node, adj in graph.adj[ending_node].iteritems() - for key in adj - ] + if underpath: + process_travel_edges(graph, fill_stitch_graph, shape, travel_edges) - # heuristic: try grating segments first - neighbors.sort(key=lambda dest_key: dest_key[1] == "segment", reverse=True) + debug.log_graph(graph, "travel graph") - for next_node, key in neighbors: - # skip if I've already followed this edge - edge = PathEdge((ending_node, next_node), key) - if edge in visited_edges: - continue + return graph - new_path = path + [edge] - if next_node == starting_node: - # ignore trivial loops (down and back a doubled edge) - if len(new_path) > 3: - return new_path +def weight_edges_by_length(graph, multiplier=1): + for start, end, key in graph.edges: + p1 = InkstitchPoint(*start) + p2 = InkstitchPoint(*end) - new_visited_edges = visited_edges.copy() - new_visited_edges.add(edge) + graph[start][end][key]["weight"] = multiplier * p1.distance(p2) - to_search.appendleft((new_path, new_visited_edges)) +def get_segments(graph): + segments = [] + for start, end, key, data in graph.edges(keys=True, data=True): + if key == 'segment': + segments.append(shgeo.LineString((start, end))) -def find_loop(graph, starting_nodes): - """find a loop in the graph that is connected to the existing path + return segments - Start at a candidate node and search through edges to find a path - back to that node. We'll use a breadth-first search (BFS) in order to - find the shortest available loop. - In most cases, the BFS should not need to search far to find a loop. - The queue should stay relatively short. +def process_travel_edges(graph, fill_stitch_graph, shape, travel_edges): + """Weight the interior edges and pre-calculate intersection with fill stitch rows.""" - An added heuristic will be used: if the BFS queue's length becomes - too long, we'll abort and try a different starting point. Due to - the way we've set up the graph, there's bound to be a better choice - somewhere else. - """ + # Set the weight equal to 5x the edge length, to encourage travel() + # to avoid them. + weight_edges_by_length(graph, 5) - loop = None - retry = [] - max_queue_length = 2000 + segments = get_segments(fill_stitch_graph) - while not loop: - while not loop and starting_nodes: - starting_node = starting_nodes.pop() + # The shapely documentation is pretty unclear on this. An STRtree + # allows for building a set of shapes and then efficiently testing + # the set for intersection. This allows us to do blazing-fast + # queries of which line segments overlap each underpath edge. + strtree = STRtree(segments) - try: - # Note: if bfs_for_loop() returns None, no loop can be - # constructed from the starting_node (because the - # necessary edges have already been consumed). In that - # case we discard that node and try the next. - loop = bfs_for_loop(graph, starting_node, max_queue_length) + # This makes the distance calculations below a bit faster. We're + # not looking for high precision anyway. + outline = shape.boundary.simplify(0.5 * PIXELS_PER_MM, preserve_topology=False) - except MaxQueueLengthExceeded: - # We're giving up on this node for now. We could try - # this node again later, so add it to the bottm of the - # stack. - retry.append(starting_node) + for ls in travel_edges: + # In most cases, ls will be a simple line segment. If we're + # unlucky, in rare cases we can get a tiny little extra squiggle + # at the end that can be ignored. + points = [InkstitchPoint(*coord) for coord in ls.coords] + p1, p2 = points[0], points[-1] - # Darn, couldn't find a loop. Try harder. - starting_nodes.extendleft(retry) - max_queue_length *= 2 + edge = (p1.as_tuple(), p2.as_tuple(), 'travel') - starting_nodes.extendleft(retry) - return loop + for segment in strtree.query(ls): + # It seems like the STRTree only gives an approximate answer of + # segments that _might_ intersect ls. Refining the result is + # necessary but the STRTree still saves us a ton of time. + if segment.crosses(ls): + start, end = segment.coords + fill_stitch_graph[start][end]['segment']['underpath_edges'].append(edge) + # The weight of a travel edge is the length of the line segment. + weight = p1.distance(p2) -def insert_loop(path, loop): - """insert a sub-loop into an existing path + # Give a bonus to edges that are far from the outline of the shape. + # This includes the outer outline and the outlines of the holes. + # The result is that travel stitching will tend to hug the center + # of the shape. + weight /= ls.distance(outline) + 0.1 - The path will be a series of edges describing a path through the graph - that ends where it starts. The loop will be similar, and its starting - point will be somewhere along the path. + graph.add_edge(*edge, weight=weight) - Insert the loop into the path, resulting in a longer path. + # without this, we sometimes get exceptions like this: + # Exception AttributeError: "'NoneType' object has no attribute 'GEOSSTRtree_destroy'" in + # <bound method STRtree.__del__ of <shapely.strtree.STRtree instance at 0x0D2BFD50>> ignored + del strtree - Both the path and the loop will be a list of edges specified as a - start and end point. The points will be specified in order, such - that they will look like this: - ((p1, p2), (p2, p3), (p3, p4), ...) +def travel_grating(shape, angle, row_spacing): + rows_of_segments = intersect_region_with_grating(shape, angle, row_spacing) + segments = list(chain(*rows_of_segments)) - path will be modified in place. - """ + return shgeo.MultiLineString(segments) - loop_start = loop[0][0] - for i, (start, end) in enumerate(path): - if start == loop_start: - break - else: - # if we didn't find the start of the loop in the list at all, it must - # be the endpoint of the last segment - i += 1 +def build_travel_edges(shape, fill_angle): + r"""Given a graph, compute the interior travel edges. - path[i:i] = loop + We want to fill the shape with a grid of line segments that can be used for + travel stitch routing. Our goals: + * not too many edges so that the shortest path algorithm is speedy + * don't travel in the direction of the fill stitch rows so that the + travel stitch doesn't visually disrupt the fill stitch pattern -def nearest_node_on_outline(graph, point, outline_index=0): - point = shapely.geometry.Point(*point) - outline_nodes = [node for node, data in graph.nodes(data=True) if data['index'] == outline_index] - nearest = min(outline_nodes, key=lambda node: shapely.geometry.Point(*node).distance(point)) + To do this, we'll fill the shape with three gratings: one at +45 degrees + from the fill stitch angle, one at -45 degrees, and one at +90 degrees. + The pattern looks like this: - return nearest + /|\|/|\|/|\ + \|/|\|/|\|/ + /|\|/|\|/|\ + \|/|\|/|\|/ + Returns: (endpoints, edges) + endpoints - the points on travel edges that intersect with the boundary + of the shape + edges - the line segments we can travel on, as individual LineString + instances + """ -def get_outline_nodes(graph, outline_index=0): - outline_nodes = [(node, data['projection']) - for node, data - in graph.nodes(data=True) - if data['index'] == outline_index] - outline_nodes.sort(key=lambda node_projection: node_projection[1]) - outline_nodes = [node for node, data in outline_nodes] + # If the shape is smaller, we'll have less room to maneuver and it's more likely + # we'll travel around the outside border of the shape. Counteract that by making + # the grid denser. + if shape.area < 10000: + scale = 0.5 + else: + scale = 1.0 - return outline_nodes + grating1 = travel_grating(shape, fill_angle + math.pi / 4, scale * 2 * PIXELS_PER_MM) + grating2 = travel_grating(shape, fill_angle - math.pi / 4, scale * 2 * PIXELS_PER_MM) + grating3 = travel_grating(shape, fill_angle - math.pi / 2, scale * math.sqrt(2) * PIXELS_PER_MM) + debug.add_layer("auto-fill travel") + debug.log_line_strings(grating1, "grating1") + debug.log_line_strings(grating2, "grating2") + debug.log_line_strings(grating3, "grating3") -def find_initial_path(graph, starting_point, ending_point=None): - starting_node = nearest_node_on_outline(graph, starting_point) + endpoints = [coord for mls in (grating1, grating2, grating3) + for ls in mls + for coord in ls.coords] - if ending_point is not None: - ending_node = nearest_node_on_outline(graph, ending_point) + diagonal_edges = grating1.symmetric_difference(grating2) - if ending_point is None or starting_node is ending_node: - # If they didn't give an ending point, pick either neighboring node - # along the outline -- doesn't matter which. We do this because - # the algorithm requires we start with _some_ path. - neighbors = [n for n, keys in graph.adj[starting_node].iteritems() if 'outline' in keys] - return [PathEdge((starting_node, neighbors[0]), "initial")] - else: - outline_nodes = get_outline_nodes(graph) + # without this, floating point inaccuracies prevent the intersection points from lining up perfectly. + vertical_edges = snap(grating3.difference(grating1), diagonal_edges, 0.005) - # Multiply the outline_nodes list by 2 (duplicate it) because - # the ending_node may occur first. - outline_nodes *= 2 - start_index = outline_nodes.index(starting_node) - end_index = outline_nodes.index(ending_node, start_index) - nodes = outline_nodes[start_index:end_index + 1] + return endpoints, chain(diagonal_edges, vertical_edges) - # we have a series of sequential points, but we need to - # turn it into an edge list - path = [] - for start, end in izip(nodes[:-1], nodes[1:]): - path.append(PathEdge((start, end), "initial")) - return path +def check_graph(graph, shape, max_stitch_length): + if networkx.is_empty(graph) or not networkx.is_eulerian(graph): + if shape.area < max_stitch_length ** 2: + message = "This shape is so small that it cannot be filled with rows of stitches. " \ + "It would probably look best as a satin column or running stitch." + raise InvalidPath(_(message)) + else: + message = "Cannot parse shape. " \ + "This most often happens because your shape is made up of multiple sections that aren't connected." + raise InvalidPath(_(message)) + +def nearest_node(nodes, point, attr=None): + point = shgeo.Point(*point) + nearest = min(nodes, key=lambda node: shgeo.Point(*node).distance(point)) -def find_stitch_path(graph, segments, starting_point=None, ending_point=None): + return nearest + + +@debug.time +def find_stitch_path(graph, travel_graph, starting_point=None, ending_point=None): """find a path that visits every grating segment exactly once Theoretically, we just need to find an Eulerian Path in the graph. @@ -392,51 +410,81 @@ def find_stitch_path(graph, segments, starting_point=None, ending_point=None): """ graph = graph.copy() - num_segments = len(segments) - segments_visited = 0 - nodes_visited = deque() - if starting_point is None: - starting_point = segments[0][0] + if not starting_point: + starting_point = graph.nodes.keys()[0] - path = find_initial_path(graph, starting_point, ending_point) + starting_node = nearest_node(graph, starting_point) - # Our graph is Eulerian: every node has an even degree. An Eulerian graph - # must have an Eulerian Circuit which visits every edge and ends where it - # starts. - # - # However, we're starting with a path and _not_ removing the edges of that - # path from the graph. By doing this, we're implicitly adding those edges - # to the graph, after which the starting and ending point (and only those - # two) will now have odd degree. A graph that's Eulerian except for two - # nodes must have an Eulerian Path that starts and ends at those two nodes. - # That's how we force the starting and ending point. - - nodes_visited.append(path[0][0]) + if ending_point: + ending_node = nearest_node(graph, ending_point) + else: + ending_point = starting_point + ending_node = starting_node + + # The algorithm below is adapted from networkx.eulerian_circuit(). + path = [] + vertex_stack = [(ending_node, None)] + last_vertex = None + last_key = None + + while vertex_stack: + current_vertex, current_key = vertex_stack[-1] + if graph.degree(current_vertex) == 0: + if last_vertex: + path.append(PathEdge((last_vertex, current_vertex), last_key)) + last_vertex, last_key = current_vertex, current_key + vertex_stack.pop() + else: + ignore, next_vertex, next_key = pick_edge(graph.edges(current_vertex, keys=True)) + vertex_stack.append((next_vertex, next_key)) + graph.remove_edge(current_vertex, next_vertex, next_key) - while segments_visited < num_segments: - loop = find_loop(graph, nodes_visited) + # The above has the excellent property that it tends to do travel stitches + # before the rows in that area, so we can hide the travel stitches under + # the rows. + # + # The only downside is that the path is a loop starting and ending at the + # ending node. We need to start at the starting node, so we'll just + # start off by traveling to the ending node. + # + # Note, it's quite possible that part of this PathEdge will be eliminated by + # collapse_sequential_outline_edges(). + + if starting_node is not ending_node: + path.insert(0, PathEdge((starting_node, ending_node), key="initial")) + + # If the starting and/or ending point falls far away from the end of a row + # of stitches (like can happen at the top of a square), then we need to + # add travel stitch to that point. + real_start = nearest_node(travel_graph, starting_point) + path.insert(0, PathEdge((real_start, starting_node), key="outline")) + + # We're willing to start inside the shape, since we'll just cover the + # stitches. We have to end on the outline of the shape. This is mostly + # relevant in the case that the user specifies an underlay with an inset + # value, because the starting point (and possibly ending point) can be + # inside the shape. + outline_nodes = [node for node, outline in travel_graph.nodes(data="outline") if outline is not None] + real_end = nearest_node(outline_nodes, ending_point) + path.append(PathEdge((ending_node, real_end), key="outline")) - if not loop: - print >> sys.stderr, _("Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github.") - break + return path - segments_visited += sum(1 for edge in loop if edge.is_segment()) - nodes_visited.extend(edge[0] for edge in loop) - graph.remove_edges_from(loop) - insert_loop(path, loop) +def pick_edge(edges): + """Pick the next edge to traverse in the pathfinding algorithm""" - if ending_point is None: - # If they didn't specify an ending point, then the end of the path travels - # around the outline back to the start (see find_initial_path()). This - # isn't necessary, so remove it. - trim_end(path) + # Prefer a segment if one is available. This has the effect of + # creating long sections of back-and-forth row traversal. + for source, node, key in edges: + if key == 'segment': + return source, node, key - return path + return list(edges)[0] -def collapse_sequential_outline_edges(graph, path): +def collapse_sequential_outline_edges(path): """collapse sequential edges that fall on the same outline When the path follows multiple edges along the outline of the region, @@ -466,99 +514,44 @@ def collapse_sequential_outline_edges(graph, path): return new_path -def connect_points(shape, start, end, running_stitch_length, row_spacing): - """Create stitches to get from one point on an outline of the shape to another. - - An outline is essentially a loop (a path of points that ends where it starts). - Given point A and B on that loop, we want to take the shortest path from one - to the other. Due to the way our path-finding algorithm above works, it may - have had to take the long way around the shape to get from A to B, but we'd - rather ignore that and just get there the short way. - """ - - # We may be on the outer boundary or on on of the hole boundaries. - outline_index = which_outline(shape, start) - outline = shape.boundary[outline_index] - - # First, figure out the start and end position along the outline. The - # projection gives us the distance travelled down the outline to get to - # that point. - start = shapely.geometry.Point(start) - start_projection = outline.project(start) - end = shapely.geometry.Point(end) - end_projection = outline.project(end) - - # If the points are pretty close, just jump there. There's a slight - # risk that we're going to sew outside the shape here. The way to - # avoid that is to use running_stitch() even for these really short - # connections, but that would be really slow for all of the - # connections from one row to the next. - # - # This seems to do a good job of avoiding going outside the shape in - # most cases. 1.4 is chosen as approximately the length of the - # stitch connecting two rows if the side of the shape is at a 45 - # degree angle to the rows of stitches (sqrt(2)). - direct_distance = abs(end_projection - start_projection) - if direct_distance < row_spacing * 1.4 and direct_distance < running_stitch_length: - return [InkstitchPoint(end.x, end.y)] - - # The outline path has a "natural" starting point. Think of this as - # 0 or 12 on an analog clock. - - # Cut the outline into two paths at the starting point. The first - # section will go from 12 o'clock to the starting point. The second - # section will go from the starting point all the way around and end - # up at 12 again. - result = cut(outline, start_projection) - - # result[0] will be None if our starting point happens to already be at - # 12 o'clock. - if result[0] is not None: - before, after = result - - # Make a new outline, starting from the starting point. This is - # like rotating the clock so that now our starting point is - # at 12 o'clock. - outline = shapely.geometry.LineString(list(after.coords) + list(before.coords)) - - # Now figure out where our ending point is on the newly-rotated clock. - end_projection = outline.project(end) - - # Cut the new path at the ending point. before and after now represent - # two ways to get from the starting point to the ending point. One - # will most likely be longer than the other. - before, after = cut(outline, end_projection) - - if before.length <= after.length: - points = list(before.coords) - else: - # after goes from the ending point to the starting point, so reverse - # it to get from start to end. - points = list(reversed(after.coords)) +def travel(travel_graph, start, end, running_stitch_length, skip_last): + """Create stitches to get from one point on an outline of the shape to another.""" - # Now do running stitch along the path we've found. running_stitch() will - # avoid cutting sharp corners. - path = [InkstitchPoint(*p) for p in points] + path = networkx.shortest_path(travel_graph, start, end, weight='weight') + path = [InkstitchPoint(*p) for p in path] stitches = running_stitch(path, running_stitch_length) - # The row of stitches already stitched the first point, so skip it. - return stitches[1:] - - -def trim_end(path): - while path and path[-1].is_outline(): - path.pop() + # The path's first stitch will start at the end of a row of stitches. We + # don't want to double that last stitch, so we'd like to skip it. + if skip_last and len(path) > 2: + # However, we don't want to skip it if we've had to do any actual + # travel in the interior of the shape. The reason is that we can + # potentially cut a corner and stitch outside the shape. + # + # If the path is longer than two nodes, then it is not a simple + # transition from one row to the next, so we'll keep the stitch. + return stitches + else: + # Just a normal transition from one row to the next, so skip the first + # stitch. + return stitches[1:] -def path_to_stitches(graph, path, shape, angle, row_spacing, max_stitch_length, running_stitch_length, staggers, skip_last): - path = collapse_sequential_outline_edges(graph, path) +@debug.time +def path_to_stitches(path, travel_graph, fill_stitch_graph, angle, row_spacing, max_stitch_length, running_stitch_length, staggers, skip_last): + path = collapse_sequential_outline_edges(path) stitches = [] + # If the very first stitch is travel, we'll omit it in travel(), so add it here. + if not path[0].is_segment(): + stitches.append(InkstitchPoint(*path[0].nodes[0])) + for edge in path: if edge.is_segment(): stitch_row(stitches, edge[0], edge[1], angle, row_spacing, max_stitch_length, staggers, skip_last) + travel_graph.remove_edges_from(fill_stitch_graph[edge[0]][edge[1]]['segment'].get('underpath_edges', [])) else: - stitches.extend(connect_points(shape, edge[0], edge[1], running_stitch_length, row_spacing)) + stitches.extend(travel(travel_graph, edge[0], edge[1], running_stitch_length, skip_last)) return stitches diff --git a/lib/stitches/fill.py b/lib/stitches/fill.py index e00d66de..924f64f6 100644 --- a/lib/stitches/fill.py +++ b/lib/stitches/fill.py @@ -140,7 +140,7 @@ def intersect_region_with_grating(shape, angle, row_spacing, end_row_spacing=Non res = grating_line.intersection(shape) if (isinstance(res, shapely.geometry.MultiLineString)): - runs = map(lambda line_string: line_string.coords, res.geoms) + runs = [line_string.coords for line_string in res.geoms] else: if res.is_empty or len(res.coords) == 1: # ignore if we intersected at a single point or no points @@ -153,7 +153,7 @@ def intersect_region_with_grating(shape, angle, row_spacing, end_row_spacing=Non if flip: runs.reverse() - runs = map(lambda run: tuple(reversed(run)), runs) + runs = [tuple(reversed(run)) for run in runs] rows.append(runs) diff --git a/lib/svg/__init__.py b/lib/svg/__init__.py index 0b4a6ee4..640aee73 100644 --- a/lib/svg/__init__.py +++ b/lib/svg/__init__.py @@ -1,4 +1,5 @@ from .guides import get_guides +from .path import apply_transforms, get_node_transform, get_correction_transform, line_strings_to_csp, point_lists_to_csp, line_strings_to_path from .path import apply_transforms, get_node_transform, get_correction_transform, line_strings_to_csp, point_lists_to_csp from .rendering import color_block_to_point_lists, render_stitch_plan from .svg import get_document, generate_unique_id diff --git a/lib/svg/path.py b/lib/svg/path.py index d2b4aee1..f0f6708b 100644 --- a/lib/svg/path.py +++ b/lib/svg/path.py @@ -1,3 +1,4 @@ +import cubicsuperpath import inkex import simpletransform @@ -80,3 +81,11 @@ def point_lists_to_csp(point_lists): csp.append(subpath) return csp + + +def line_strings_to_path(line_strings): + csp = line_strings_to_csp(line_strings) + + return inkex.etree.Element("path", { + "d": cubicsuperpath.formatPath(csp) + }) diff --git a/print/resources/inkstitch-logo.svg b/print/resources/inkstitch-logo.svg index d9a298cf..138318b9 100644 --- a/print/resources/inkstitch-logo.svg +++ b/print/resources/inkstitch-logo.svg @@ -1,27 +1,98 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Creator: CorelDRAW X7 -->
-<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="99.9999mm" height="96.4295mm" version="1.1" style="shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd"
-viewBox="0 0 15109 14570"
- xmlns:xlink="http://www.w3.org/1999/xlink">
- <defs>
- <style type="text/css">
- <![CDATA[
- .fil0 {fill:none}
- .fil3 {fill:black}
- .fil1 {fill:#003399}
- .fil4 {fill:gray}
- .fil2 {fill:white}
- ]]>
- </style>
- </defs>
- <g id="Layer_x0020_1">
- <metadata id="CorelCorpID_0Corel-Layer"/>
- <rect class="fil0" width="15109" height="14570"/>
- <path class="fil1" d="M9857 7480l0 -51c0,-15 12,-27 27,-27l295 0c15,0 27,12 27,27l0 51c0,15 -12,28 -27,28l-295 0c-15,0 -27,-13 -27,-28zm2819 -1566c10,66 67,116 135,116l0 0c75,0 137,-61 137,-137l0 -144c0,-37 18,-68 49,-88 32,-19 69,-20 101,-2 83,43 138,125 138,232l0 2788c0,147 -121,268 -268,268l-292 0 0 443c0,1659 -1357,3016 -3016,3016l-4210 0c-1659,0 -3017,-1357 -3017,-3016l0 -402 -286 0c-151,0 -274,-123 -274,-273l0 -2778c0,-150 123,-273 274,-273l286 0 0 -484c0,-1659 1358,-3016 3017,-3016l4210 0c1659,0 3016,1357 3016,3016l0 734zm-10456 1686l107 0c43,0 81,21 106,52l0 170c-25,32 -63,52 -106,52l-107 0c-75,0 -136,-62 -136,-137l0 0c0,-75 61,-137 136,-137zm54 710c75,0 136,61 136,136 0,76 -61,137 -136,137 -76,0 -137,-61 -137,-137 0,-75 61,-136 137,-136zm10515 -710l107 0c75,0 137,62 137,137l0 0c0,75 -62,137 -137,137l-107 0c-47,0 -88,-24 -113,-61l0 -152c25,-36 66,-61 113,-61zm54 711c75,0 135,60 135,135 0,75 -60,136 -135,136 -75,0 -136,-61 -136,-136 0,-75 61,-135 136,-135zm-1957 -838c-676,154 -776,166 -1566,74l-1848 18c-374,4 -659,116 -1029,116l-2070 0 -138 -75 0 -302 138 -75 2070 0c370,0 655,111 1029,115l1848 19c790,-92 890,-80 1566,73 9,2 15,10 15,19 0,9 -6,16 -15,18zm-6324 -832l0 -2163 516 0 0 2163 -516 0zm1562 0l0 -2234 50 0 1347 1263 0 -1192 477 0 0 2246 -45 0 -1352 -1263 0 1180 -477 0zm2865 0l0 -2163 510 0 0 941 715 -941 614 0 -816 1029 881 1134 -624 0 -770 -996 0 996 -510 0zm-4809 2781c86,52 160,89 220,111 60,21 119,31 177,31 57,0 104,-13 139,-38 35,-26 53,-58 53,-98 0,-57 -63,-122 -188,-193 -20,-12 -36,-21 -46,-27l-95 -54c-92,-52 -161,-111 -205,-177 -45,-66 -67,-140 -67,-223 0,-113 43,-206 128,-278 85,-72 195,-108 330,-108 50,0 103,5 161,17 58,12 123,30 194,54l0 329c-68,-43 -132,-75 -193,-98 -61,-23 -112,-35 -155,-35 -47,0 -84,10 -111,30 -27,21 -41,48 -41,83 0,24 8,47 25,68 16,22 40,41 72,58l165 91c137,76 230,147 277,211 48,65 72,141 72,230 0,136 -47,247 -140,331 -93,84 -217,126 -371,126 -52,0 -109,-5 -171,-16 -61,-11 -128,-28 -202,-51l-28 -374zm1440 396l0 -1110 -445 0 0 -293 1224 0 0 293 -444 0 0 1110 -335 0zm986 0l0 -1403 335 0 0 1403 -335 0zm989 0l0 -1110 -446 0 0 -293 1225 0 0 293 -444 0 0 1110 -335 0zm1983 -959c-60,-63 -122,-109 -184,-139 -62,-30 -128,-45 -196,-45 -119,0 -216,41 -291,122 -76,82 -113,188 -113,316 0,128 37,232 112,312 75,79 172,119 292,119 71,0 142,-14 213,-44 70,-30 141,-74 211,-134l-22 373c-60,40 -125,71 -196,92 -72,22 -146,32 -223,32 -82,0 -161,-12 -237,-38 -76,-26 -146,-64 -209,-115 -91,-71 -160,-157 -208,-259 -48,-102 -72,-214 -72,-335 0,-104 18,-201 53,-292 36,-91 87,-171 155,-241 68,-70 147,-123 237,-160 90,-37 184,-55 283,-55 79,0 154,10 226,33 72,21 140,55 205,99l-36 359zm261 959l0 -1403 331 0 0 515 541 0 0 -515 329 0 0 1403 -329 0 0 -589 -541 0 0 589 -331 0zm-4389 -7142c-1376,0 -2504,1128 -2504,2504l0 4210c0,1376 1128,2504 2504,2504l4210 0c1376,0 2504,-1128 2504,-2504l0 -4210c0,-1376 -1128,-2504 -2504,-2504l-4210 0z"/>
- <path class="fil2" d="M5450 2676c-1376,0 -2504,1128 -2504,2504l0 4210c0,1376 1128,2504 2504,2504l4210 0c1376,0 2504,-1128 2504,-2504l0 -4210c0,-1376 -1128,-2504 -2504,-2504l-4210 0z"/>
- <path class="fil3" d="M9839 9818l0 -1403 331 0 0 515 541 0 0 -515 329 0 0 1403 -329 0 0 -589 -541 0 0 589 -331 0zm-261 -959c-60,-63 -122,-109 -184,-139 -62,-30 -128,-45 -196,-45 -119,0 -216,41 -291,122 -76,82 -113,188 -113,316 0,128 37,232 112,312 75,79 172,119 292,119 71,0 142,-14 213,-44 70,-30 141,-74 211,-134l-22 373c-60,40 -125,71 -196,92 -72,22 -146,32 -223,32 -82,0 -161,-12 -237,-38 -76,-26 -146,-64 -209,-115 -91,-71 -160,-157 -208,-259 -48,-102 -72,-214 -72,-335 0,-104 18,-201 53,-292 36,-91 87,-171 155,-241 68,-70 147,-123 237,-160 90,-37 184,-55 283,-55 79,0 154,10 226,33 72,21 140,55 205,99l-36 359zm-1983 959l0 -1110 -446 0 0 -293 1225 0 0 293 -444 0 0 1110 -335 0zm-989 0l0 -1403 335 0 0 1403 -335 0zm-986 0l0 -1110 -445 0 0 -293 1224 0 0 293 -444 0 0 1110 -335 0zm-1440 -396c86,52 160,89 220,111 60,21 119,31 177,31 57,0 104,-13 139,-38 35,-26 53,-58 53,-98 0,-57 -63,-122 -188,-193 -20,-12 -36,-21 -46,-27l-95 -54c-92,-52 -161,-111 -205,-177 -45,-66 -67,-140 -67,-223 0,-113 43,-206 128,-278 85,-72 195,-108 330,-108 50,0 103,5 161,17 58,12 123,30 194,54l0 329c-68,-43 -132,-75 -193,-98 -61,-23 -112,-35 -155,-35 -47,0 -84,10 -111,30 -27,21 -41,48 -41,83 0,24 8,47 25,68 16,22 40,41 72,58l165 91c137,76 230,147 277,211 48,65 72,141 72,230 0,136 -47,247 -140,331 -93,84 -217,126 -371,126 -52,0 -109,-5 -171,-16 -61,-11 -128,-28 -202,-51l-28 -374z"/>
- <path class="fil3" d="M8989 6641l0 -2163 510 0 0 941 715 -941 614 0 -816 1029 881 1134 -624 0 -770 -996 0 996 -510 0zm-2865 0l0 -2234 50 0 1347 1263 0 -1192 477 0 0 2246 -45 0 -1352 -1263 0 1180 -477 0zm-1562 0l0 -2163 516 0 0 2163 -516 0z"/>
- <path class="fil4" d="M10886 7473c-676,154 -776,166 -1566,74l-1848 18c-374,4 -659,116 -1029,116l-2070 0 -138 -75 0 -302 138 -75 2070 0c370,0 655,111 1029,115l1848 19c790,-92 890,-80 1566,73 9,2 15,10 15,19 0,9 -6,16 -15,18zm-1029 7l0 -51c0,-15 12,-27 27,-27l295 0c15,0 27,12 27,27l0 51c0,15 -12,28 -27,28l-295 0c-15,0 -27,-13 -27,-28z"/>
- </g>
-</svg>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Creator: CorelDRAW X7 --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xml:space="preserve" + width="75.204422mm" + height="67.78524mm" + version="1.1" + style="clip-rule:evenodd;fill-rule:evenodd;image-rendering:optimizeQuality;shape-rendering:geometricPrecision;text-rendering:geometricPrecision" + viewBox="0 0 11362.647 10242" + id="svg20" + sodipodi:docname="inkstitch-logo.svg" + inkscape:version="0.92.4 (unknown)"><metadata + id="metadata24"><rdf:RDF><cc:Work + rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1918" + inkscape:window-height="973" + id="namedview22" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:zoom="0.647537" + inkscape:cx="145.20721" + inkscape:cy="128.09809" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="Layer_x0020_1" /> + <defs + id="defs4"> + <style + type="text/css" + id="style2"> + <![CDATA[ + .fil0 {fill:none} + .fil3 {fill:black} + .fil1 {fill:#003399} + .fil4 {fill:gray} + .fil2 {fill:white} + ]]> + </style> + </defs> + <g + id="Layer_x0020_1" + transform="translate(-1873.2349,-2164)"> + <metadata + id="CorelCorpID_0Corel-Layer" /> + + <path + class="fil1" + d="m 9857,7480 v -51 c 0,-15 12,-27 27,-27 h 295 c 15,0 27,12 27,27 v 51 c 0,15 -12,28 -27,28 h -295 c -15,0 -27,-13 -27,-28 z m 2819,-1566 c 10,66 67,116 135,116 v 0 c 75,0 137,-61 137,-137 v -144 c 0,-37 18,-68 49,-88 32,-19 69,-20 101,-2 83,43 138,125 138,232 v 2788 c 0,147 -121,268 -268,268 h -292 v 443 c 0,1659 -1357,3016 -3016,3016 H 5450 c -1659,0 -3017,-1357 -3017,-3016 v -402 h -286 c -151,0 -274,-123 -274,-273 V 5937 c 0,-150 123,-273 274,-273 h 286 v -484 c 0,-1659 1358,-3016 3017,-3016 h 4210 c 1659,0 3016,1357 3016,3016 z M 2220,7600 h 107 c 43,0 81,21 106,52 v 170 c -25,32 -63,52 -106,52 h -107 c -75,0 -136,-62 -136,-137 v 0 c 0,-75 61,-137 136,-137 z m 54,710 c 75,0 136,61 136,136 0,76 -61,137 -136,137 -76,0 -137,-61 -137,-137 0,-75 61,-136 137,-136 z m 10515,-710 h 107 c 75,0 137,62 137,137 v 0 c 0,75 -62,137 -137,137 h -107 c -47,0 -88,-24 -113,-61 v -152 c 25,-36 66,-61 113,-61 z m 54,711 c 75,0 135,60 135,135 0,75 -60,136 -135,136 -75,0 -136,-61 -136,-136 0,-75 61,-135 136,-135 z m -1957,-838 c -676,154 -776,166 -1566,74 l -1848,18 c -374,4 -659,116 -1029,116 H 4373 l -138,-75 v -302 l 138,-75 h 2070 c 370,0 655,111 1029,115 l 1848,19 c 790,-92 890,-80 1566,73 9,2 15,10 15,19 0,9 -6,16 -15,18 z M 4562,6641 V 4478 h 516 v 2163 z m 1562,0 V 4407 h 50 L 7521,5670 V 4478 h 477 v 2246 h -45 L 6601,5461 v 1180 z m 2865,0 V 4478 h 510 v 941 l 715,-941 h 614 l -816,1029 881,1134 h -624 l -770,-996 v 996 z M 4180,9422 c 86,52 160,89 220,111 60,21 119,31 177,31 57,0 104,-13 139,-38 35,-26 53,-58 53,-98 0,-57 -63,-122 -188,-193 -20,-12 -36,-21 -46,-27 l -95,-54 c -92,-52 -161,-111 -205,-177 -45,-66 -67,-140 -67,-223 0,-113 43,-206 128,-278 85,-72 195,-108 330,-108 50,0 103,5 161,17 58,12 123,30 194,54 v 329 c -68,-43 -132,-75 -193,-98 -61,-23 -112,-35 -155,-35 -47,0 -84,10 -111,30 -27,21 -41,48 -41,83 0,24 8,47 25,68 16,22 40,41 72,58 l 165,91 c 137,76 230,147 277,211 48,65 72,141 72,230 0,136 -47,247 -140,331 -93,84 -217,126 -371,126 -52,0 -109,-5 -171,-16 -61,-11 -128,-28 -202,-51 z m 1440,396 V 8708 h -445 v -293 h 1224 v 293 h -444 v 1110 z m 986,0 V 8415 h 335 v 1403 z m 989,0 V 8708 h -446 v -293 h 1225 v 293 h -444 v 1110 z m 1983,-959 c -60,-63 -122,-109 -184,-139 -62,-30 -128,-45 -196,-45 -119,0 -216,41 -291,122 -76,82 -113,188 -113,316 0,128 37,232 112,312 75,79 172,119 292,119 71,0 142,-14 213,-44 70,-30 141,-74 211,-134 l -22,373 c -60,40 -125,71 -196,92 -72,22 -146,32 -223,32 -82,0 -161,-12 -237,-38 -76,-26 -146,-64 -209,-115 -91,-71 -160,-157 -208,-259 -48,-102 -72,-214 -72,-335 0,-104 18,-201 53,-292 36,-91 87,-171 155,-241 68,-70 147,-123 237,-160 90,-37 184,-55 283,-55 79,0 154,10 226,33 72,21 140,55 205,99 z m 261,959 V 8415 h 331 v 515 h 541 v -515 h 329 v 1403 h -329 v -589 h -541 v 589 z M 5450,2676 c -1376,0 -2504,1128 -2504,2504 v 4210 c 0,1376 1128,2504 2504,2504 h 4210 c 1376,0 2504,-1128 2504,-2504 V 5180 c 0,-1376 -1128,-2504 -2504,-2504 z" + id="path9" + inkscape:connector-curvature="0" + style="fill:#003399" /> + <path + class="fil2" + d="m 5450,2676 c -1376,0 -2504,1128 -2504,2504 v 4210 c 0,1376 1128,2504 2504,2504 h 4210 c 1376,0 2504,-1128 2504,-2504 V 5180 c 0,-1376 -1128,-2504 -2504,-2504 z" + id="path11" + inkscape:connector-curvature="0" + style="fill:#ffffff" /> + <path + class="fil3" + d="M 9839,9818 V 8415 h 331 v 515 h 541 v -515 h 329 v 1403 h -329 v -589 h -541 v 589 z m -261,-959 c -60,-63 -122,-109 -184,-139 -62,-30 -128,-45 -196,-45 -119,0 -216,41 -291,122 -76,82 -113,188 -113,316 0,128 37,232 112,312 75,79 172,119 292,119 71,0 142,-14 213,-44 70,-30 141,-74 211,-134 l -22,373 c -60,40 -125,71 -196,92 -72,22 -146,32 -223,32 -82,0 -161,-12 -237,-38 -76,-26 -146,-64 -209,-115 -91,-71 -160,-157 -208,-259 -48,-102 -72,-214 -72,-335 0,-104 18,-201 53,-292 36,-91 87,-171 155,-241 68,-70 147,-123 237,-160 90,-37 184,-55 283,-55 79,0 154,10 226,33 72,21 140,55 205,99 z M 7595,9818 V 8708 h -446 v -293 h 1225 v 293 h -444 v 1110 z m -989,0 V 8415 h 335 v 1403 z m -986,0 V 8708 h -445 v -293 h 1224 v 293 H 5955 V 9818 Z M 4180,9422 c 86,52 160,89 220,111 60,21 119,31 177,31 57,0 104,-13 139,-38 35,-26 53,-58 53,-98 0,-57 -63,-122 -188,-193 -20,-12 -36,-21 -46,-27 l -95,-54 c -92,-52 -161,-111 -205,-177 -45,-66 -67,-140 -67,-223 0,-113 43,-206 128,-278 85,-72 195,-108 330,-108 50,0 103,5 161,17 58,12 123,30 194,54 v 329 c -68,-43 -132,-75 -193,-98 -61,-23 -112,-35 -155,-35 -47,0 -84,10 -111,30 -27,21 -41,48 -41,83 0,24 8,47 25,68 16,22 40,41 72,58 l 165,91 c 137,76 230,147 277,211 48,65 72,141 72,230 0,136 -47,247 -140,331 -93,84 -217,126 -371,126 -52,0 -109,-5 -171,-16 -61,-11 -128,-28 -202,-51 z" + id="path13" + inkscape:connector-curvature="0" + style="fill:#000000" /> + <path + class="fil3" + d="M 8989,6641 V 4478 h 510 v 941 l 715,-941 h 614 l -816,1029 881,1134 h -624 l -770,-996 v 996 z m -2865,0 V 4407 h 50 L 7521,5670 V 4478 h 477 v 2246 h -45 L 6601,5461 v 1180 z m -1562,0 V 4478 h 516 v 2163 z" + id="path15" + inkscape:connector-curvature="0" + style="fill:#000000" /> + <path + class="fil4" + d="m 10886,7473 c -676,154 -776,166 -1566,74 l -1848,18 c -374,4 -659,116 -1029,116 H 4373 l -138,-75 v -302 l 138,-75 h 2070 c 370,0 655,111 1029,115 l 1848,19 c 790,-92 890,-80 1566,73 9,2 15,10 15,19 0,9 -6,16 -15,18 z m -1029,7 v -51 c 0,-15 12,-27 27,-27 h 295 c 15,0 27,12 27,27 v 51 c 0,15 -12,28 -27,28 h -295 c -15,0 -27,-13 -27,-28 z" + id="path17" + inkscape:connector-curvature="0" + style="fill:#808080" /> + </g> +</svg>
\ No newline at end of file diff --git a/print/resources/inkstitch.js b/print/resources/inkstitch.js index ac8c72b4..86bc213e 100644 --- a/print/resources/inkstitch.js +++ b/print/resources/inkstitch.js @@ -285,7 +285,7 @@ $(function() { /* Contendeditable Fields */ - $('body').on('focusout', '[contenteditable="true"]:not(.footer-info)', function() { + $('body').on('focusout', '[contenteditable="true"]:not(.info-text)', function() { /* change svg scale */ var content = $(this).text(); var field_name = $(this).attr('data-field-name'); @@ -324,8 +324,10 @@ $(function() { } else if (item.is('figure.inksimulation')) { setSVGTransform(item, value); } else if (item.is('div.footer-info')) { - $('#footer-info-text').html(value); - item.html(value); + $('#footer-info-text').html($.parseHTML(value)); + item.html($.parseHTML(value)); + } else if (item.is('#custom-page-content')) { + $('#custom-page-content').html($.parseHTML(value)); } else { item.text(value); } @@ -339,7 +341,7 @@ $(function() { }, 500); }); - $('body').on('keypress', '[contenteditable="true"]:not(#footer-info-text)', function(e) { + $('body').on('keypress', '[contenteditable="true"]:not(.info-text)', function(e) { if (e.which == 13) { // pressing enter defocuses the element this.blur(); @@ -360,8 +362,8 @@ $(function() { } }); - $('#footer-info-text[contenteditable="true"]').focusout(function() { - updateFooter(); + $('.info-text[contenteditable="true"]').focusout(function() { + updateEditableText($(this)); }); /* Settings Bar */ @@ -415,119 +417,141 @@ $(function() { }); // Footer - function getEditMode(){ - return $('#switch-mode').prop('checked'); + function getEditMode(element){ + return element.closest('fieldset').find('.switch-mode').prop('checked'); } - $('#switch-mode').change(function() { - var editMode = getEditMode(); + $('.switch-mode').change(function() { + var element = $(this); + var info_text = element.closest('fieldset').find('.info-text'); + var editMode = getEditMode(element); if (editMode) { - $('#footer-info-text').text( $('#footer-info-text' ).html()); - $('#tool-bar .edit-only').prop("disabled", true); + info_text.text( info_text.html() ); + element.closest('.tool-bar').find('.tb-button.edit-only').prop("disabled", true); } else { - $('#footer-info-text').css('display', 'block'); - var sourceText = $('#footer-info-text').text(); - $('#footer-info-text').html( sourceText ); - $('#tool-bar .tb-button.edit-only').prop('disabled', false); + info_text.css('display', 'block'); + var sourceText = info_text.text(); + info_text.html( $.parseHTML(sourceText) ); + element.closest('.tool-bar').find('.tb-button.edit-only').prop('disabled', false); } }); - function updateFooter() { - var editMode = getEditMode(); - var footerText = ''; + function updateEditableText(element) { + var editMode = getEditMode(element); + var info_text = element.closest('fieldset').find('.info-text'); + var editableText = ''; + if (editMode) { - footerText = $('#footer-info-text' ).text(); + editableText = info_text.text(); + } else { + editableText = info_text.html(); + } + + if(info_text.is('#footer-info-text')) { + $('div.footer-info').html($.parseHTML(editableText)); + $.postJSON('/settings/footer-info', {value: editableText}); } else { - footerText = $('#footer-info-text').html(); + $.postJSON('/settings/custom-page-content', {value: editableText}); } - $('.footer-info').html(footerText); - var content = $('.footer-info').html(); - $.postJSON('/settings/footer-info', {value: content}); } function formatText(selection, value) { - var htmlMode = getEditMode(); - if(!htmlMode) { if(window.getSelection().toString()){ document.execCommand(selection, false, value); - updateFooter(); } - } } - $('#tb-bold').click(function(selection) { - formatText('bold'); + $('.tb-bold').click(function() { + if(!getEditMode($(this))) { + formatText('bold'); + updateEditableText($(this)); + } }); - $('#tb-italic').click(function() { - formatText('italic'); + $('.tb-italic').click(function() { + if(!getEditMode($(this))) { + formatText('italic'); + updateEditableText($(this)); + } }); - $('#tb-underline').click(function() { - formatText('underline'); + $('.tb-underline').click(function() { + if(!getEditMode($(this))) { + formatText('underline'); + updateEditableText($(this)); + } }); - $('#tb-remove').click(function() { - formatText('removeFormat'); + $('.tb-remove').click(function() { + if(!getEditMode($(this))) { + formatText('removeFormat'); + updateEditableText($(this)); + } }); - $('#tb-hyperlink').click(function() { - formatText('createlink', 'tempurl'); - $('#footer-url').css('display', 'block'); + $('.tb-hyperlink').click(function() { + if(!getEditMode($(this))) { + formatText('createlink', 'tempurl'); + updateEditableText($(this)); + $(this).closest('.tool-bar').children('.url-window').css('display', 'block'); + } }); - $('#url-ok').click(function() { - var link = $('#footer-link').val(); - $('#footer-info-text a[href="tempurl"]').attr('href', link); - $('#footer-link').val('https://'); - $('#footer-url').css('display', 'none'); - updateFooter(); + $('.url-ok').click(function() { + var link = $(this).closest('.tool-bar').find('.user-url').val(); + $(this).closest('fieldset').find('.info-text').find('a[href="tempurl"]').attr('href', link); + $('.user-url').val('https://'); + $('.url-window').css('display', 'none'); + updateEditableText($(this)); }); - $('#url-cancel').click(function() { - $('#footer-info-text a[href="tempurl"]').contents().unwrap(); - $('#footer-link').val('https://'); - $('#footer-url').css('display', 'none'); - updateFooter(); + $('.url-cancel').click(function() { + $(this).closest('fieldset').find('.info-text').find('a[href="tempurl"]').contents().unwrap(); + $('.user-url').val('https://'); + $('.url-window').css('display', 'none'); + updateEditableText($(this)); }); - $('#tb-mail').click(function() { - formatText('createlink', 'tempurl'); - $('#footer-email').css('display', 'block'); + $('.tb-mail').click(function() { + if(!getEditMode($(this))) { + formatText('createlink', 'tempurl'); + updateEditableText($(this)); + $(this).closest('.tool-bar').find('.mail-window').css('display', 'block'); + } }); - $('#mail-ok').click(function() { - var link = 'mailto:' + $('#footer-mail').val(); - $('#footer-info-text a[href="tempurl"]').attr('href', link); - $('#footer-mail').val('@'); - $('#footer-email').css('display', 'none'); - updateFooter(); + $('.mail-ok').click(function() { + var link = 'mailto:' + $(this).closest('.tool-bar').find('.user-mail').val(); + $(this).closest('fieldset').find('.info-text').find('a[href="tempurl"]').attr('href', link); + $('.user-mail').val('@'); + $('.mail-window').css('display', 'none'); + updateEditableText($(this)); }); - $('#mail-cancel').click(function() { - $('#footer-info-text a[href="tempurl"]').contents().unwrap(); - $('#footer-mail').val('@'); - $('#footer-email').css('display', 'none'); - updateFooter(); + $('.mail-cancel').click(function() { + $(this).closest('fieldset').find('.info-text').find('a[href="tempurl"]').contents().unwrap(); + $('.user-mail').val('@'); + $('.mail-window').css('display', 'none'); + updateEditableText($(this)); }); - $('#tb-reset').click(function() { - $('#footer-reset').css('display', 'block'); + $('.tb-reset').click(function() { + $(this).closest('.tool-bar').find('.reset-window').css('display', 'block'); }); - $('#reset-ok').click(function() { - var htmlMode = getEditMode(); + $('.reset-ok').click(function() { + var htmlMode = getEditMode($(this)); if(!htmlMode) { - $('#footer-info-text').html($('#footer-info-original').html()); + $(this).closest('fieldset').find('.info-text').html($(this).closest('.tool-bar').find('.original-info').html()); } else { - $('#footer-info-text').text($('#footer-info-original').html()); + $(this).closest('fieldset').find('.info-text').text($(this).closest('.tool-bar').find('.original-info').html()); } - $('#footer-reset').css('display', 'none'); - updateFooter(); + $('.reset-window').css('display', 'none'); + updateEditableText($(this)); }); - $('#reset-cancel').click(function() { - $('#footer-reset').css('display', 'none'); + $('.reset-cancel').click(function() { + $('.reset-window').css('display', 'none'); }); $('body').on("click", ".edit-footer-link", function() { @@ -713,6 +737,7 @@ $(function() { settings["operator-overview"] = $("[data-field-name='operator-overview']").is(':checked'); settings["operator-detailedview"] = $("[data-field-name='operator-detailedview']").is(':checked'); settings["operator-detailedview-thumbnail-size"] = $("[data-field-name='operator-detailedview-thumbnail-size']").val(); + settings["custom-page"] = $("[data-field-name='custom-page']").is(':checked'); settings["paper-size"] = $('select#printing-size').find(':selected').val(); var logo = $("figure.brandlogo img").attr('src'); diff --git a/print/resources/style.css b/print/resources/style.css index f697c7dc..9ffff07d 100644 --- a/print/resources/style.css +++ b/print/resources/style.css @@ -66,30 +66,6 @@ body { position: relative; } -/* Printing Size */ - .page.a4 { - width: 205mm; - height: 292mm; - padding: 15mm; - } - - .page.client-overview.a4 header, .page.operator-overview.a4 header { - height: 50mm; - flex-direction: row; - } - - .page.client-overview.a4 div.job-details, .page.operator-overview.a4 div.job-details { - width: 100%; - } - - .page.client-overview.a4 .client-overview-main figure.inksimulation { - height: 150mm; - } - - .page.client-overview.a4 figure.brandlogo, .page.operator-overview.a4 figure.brandlogo { - margin: -6mm 2.5mm; - } - /* Settings */ .ui { @@ -289,7 +265,7 @@ body { position: relative; } - #footer-info-text { + .info-text { width: 100%; min-height: 5em; border: 1px solid darkgrey; @@ -298,23 +274,25 @@ body { background: white; } - #tool-bar .tb-button { - border: 1px solid darkgrey; + .tb-button { + border: 1px solid darkgrey !important; border-bottom: none; margin-bottom: -0.2em; - cursor: pointer; - color: #413232; height: 2.2em; vertical-align: top; + padding: 5px; + cursor: pointer; + background: white; + color: black; } - #tool-bar .tb-button:disabled { - background: #eaeaea; - color: white; - cursor: auto; + .tb-button:disabled { + background: #eaeaea !important; + color: white !important; + cursor: auto !important; } - #edit-mode { + .edit-mode { display: inline; position: relative; border: 1px solid darkgray; @@ -322,18 +300,18 @@ body { vertical-align: top; } - #edit-mode input { + .edit-mode input { visibility: hidden; } - #edit-mode label { + .edit-mode label { cursor: pointer; vertical-align: middle; background: white; color: #413232; } - #edit-mode label:after { + .edit-mode label:after { opacity: 0.1; content: ''; position: absolute; @@ -348,21 +326,21 @@ body { transform: rotate(-45deg); } - #edit-mode label:hover::after { + .edit-mode label:hover::after { opacity: 0.5; } - #edit-mode input[type=checkbox]:checked + label:after { + .edit-mode input[type=checkbox]:checked + label:after { opacity: 1; } - #edit-mode span { + .edit-mode span { margin-left: 1em; } - div#footer-url, div#footer-email, div#footer-reset { + div.tb-popup { display: none; - position: absolute; + position: absolute !important; background: white; border: 1px solid black; padding: 5mm; @@ -371,7 +349,7 @@ body { z-index: 10; } - div#footer-info-original { + div.original-info { visibility: hidden; width: 0; height: 0; @@ -418,7 +396,6 @@ body { /* Header */ - header { width: 100%; height: 40mm; @@ -434,13 +411,11 @@ body { figure.brandlogo { height: 30mm; width: 30mm; - margin: 2.5mm; + margin: 0 4mm 0 0; } figure.brandlogo label { display: block; - width: 100%; - height: 100%; text-align: center; position: relative; } @@ -472,13 +447,6 @@ body { cursor: pointer; } - .operator-detailedview figure.brandlogo { - height: 20mm; - width: 30mm; - margin: 0 2.5mm; - text-align: left; - } - .operator-detailedview figure.brandlogo img { max-width: 30mm; max-height: 20mm; @@ -488,7 +456,7 @@ body { display: flex; display: -webkit-flex; /* old webkit */ display: -ms-flexbox; /* IE 10 */ - width: calc(100% - 50mm); + width: calc(100% - 40mm); height: 50%; flex-grow: 1; } @@ -515,6 +483,10 @@ body { padding-top: 6mm; } + .operator-overview figure.inksimulation { + height: 210mm; + } + .operator-overview div.job-details, .client-overview div.job-details { padding-top: 2mm; } @@ -904,6 +876,11 @@ body { .opd-color-block.large { display: block; margin: 5mm 0; + font-size: 14pt; + } + + .opd-color-block.large .operator-colorswatch { + font-size: 8pt; } .opd-color-block.large:first-child { @@ -987,6 +964,23 @@ body { display: none; } +/* Custom information sheet */ + .custom-page header { + height: 30mm; + } + + .custom-page main { + height: 230mm + } + #custom-page-tool-bar { + margin-bottom: 0.5em; + } + + #custom-page-content { + height: 200mm; + overflow-y: hidden; + text-align: left; + } /* Color Swatch Logic */ /* reference : http://jsfiddle.net/jrulle/btg63ezy/3/ */ @@ -1120,7 +1114,33 @@ body { height: calc(100% / 5); width: calc(100% / 12); } - + + +/* Print Size A4 */ + + .page.a4 { + width: 210mm; + height: 296mm; + padding: 15mm; + } + + .page.client-overview.a4 header, .page.operator-overview.a4 header { + height: 50mm; + flex-direction: row; + } + + .page.client-overview.a4 div.job-details, .page.operator-overview.a4 div.job-details { + width: 100%; + } + + .page.client-overview.a4 .client-overview-main figure.inksimulation { + height: 150mm; + } + + .page.client-overview.a4 figure.brandlogo, .page.operator-overview.a4 figure.brandlogo { + margin: 0 4mm -2mm 0; + } + @media screen { .page { margin-top: 20mm !important; @@ -1153,8 +1173,11 @@ body { .ui, #settings-ui, #errors, - span.logo-instructions { - display: none; + span.logo-instructions, + #custom-page-tool-bar, + #custom-page-content, + .notice--warning { + display: none !important; } .header-field:not(:empty)::before { diff --git a/print/templates/custom-page.html b/print/templates/custom-page.html new file mode 100644 index 00000000..1ed15dae --- /dev/null +++ b/print/templates/custom-page.html @@ -0,0 +1,40 @@ + <header> + {% include 'headline.html' %} + </header> + <main> + <fieldset id="edit-custom-page"> + <div id="custom-page-tool-bar" class="tool-bar"> + <button id="custom-page-bold" class="tb-button tb-bold ff-serif edit-only" title="Bold"><b>B</b></button> + <button id="custom-page-italic" class="tb-button tb-italic ff-serif edit-only" title="Italic"><i>I</i></button> + <button id="custom-page-underline" class="tb-button tb-underline ff-serif edit-only" title="Underline"><u>U</u></button> + <button id="custom-page-remove" class="tb-button tb-remove ff-serif edit-only" title="Remove formatting"> + <u style="vertical-align: super; font-size: 60%;">A</u> + <span style="vertical-align: sub; font-size: 80%;">A</span> + </button> + <button id="custom-page-hyperlink" class="tb-button tb-hyperlink edit-only" title="Hyperlink">☍</button> + <button id="custom-page-mail" class="tb-button tb-mail edit-only" title="E-Mail">✉</button> + <button id="custom-page-reset" class="tb-button tb-reset" title="Reset text">↺</button> + <p id="custom-page-edit-mode" class="edit-mode"> + <input type="checkbox" id="custom-page-switch-mode" class="switch-mode" name="custom-page-switch-mode" /> + <label for="custom-page-switch-mode">{{ ('Show HTML') }}</label> + </p> + <div id="custom-page-url" class="tb-popup url-window"> + <p>{{ _("Enter URL") }}: <input type="text" id="custom-page-link" class="user-url" name="custom-page-link" value="https://" /></p> + <p><button id="custom-page-url-ok" class="url-ok">{{ _("OK") }}</button> <button id="custom-page-url-cancel" class="url-cancel">{{ _("Cancel") }}</button></p> + </div> + <div id="custom-page-email" class="tb-popup mail-window"> + <p>{{ _("Enter E-Mail") }}: <input type="text" id="custom-page-mail" class="user-mail" name="custom-page-mail" value="@" /></p> + <p><button id="custom-page-mail-ok" class="mail-ok">{{ _("OK") }}</button> <button id="custom-page-mail-cancel" class="mail-cancel">{{ _("Cancel") }}</button></p> + </div> + <div id="custom-page-info-original" class="original-info"><b>{{ _("Custom Information Sheet") }}</b></div> + <div id="custom-page-reset" class="tb-popup reset-window"> + <p>{{ _("This will reset your custom text to the default.") }}</p> + <p>{{ _("All changes will be lost.") }}</p> + <p><button id="custom-page-reset-ok" class="reset-ok">{{ _("OK") }}</button> <button id="custom-page-reset-cancel" class="reset-cancel">{{ _("Cancel") }}</button></p> + </div> + </div> + <div id="custom-page-content" class="info-text" contenteditable="true" data-field-name="custom-page-content">{{ _("Custom Information Sheet") }}</div> + <p class="notice--warning"><b>Note</b>: If you are using Firefox, use visible URLs. Links will not be printed to PDF with this browser.</p> + </fieldset> + </main> + {% include 'footer.html' %} diff --git a/print/templates/index.html b/print/templates/index.html index c7fa5d74..d0ab848f 100644 --- a/print/templates/index.html +++ b/print/templates/index.html @@ -9,22 +9,23 @@ </head> <body> {% include 'ui.html' %} - {# client overview #} - <div class="page client-overview" style="display: {{ 'block' if view.client_overview else 'none' }}">{% include 'print_overview.html' %}</div> + <div class="page client-overview" style="display: {{ 'block' if view.client_overview else 'none' }}">{% include 'print_overview.html' %}</div> {# client detailedview #} - {% set printview = 'detailedview' %} - {% for color_block in color_blocks %} - {% set outer_loop = loop %} - <div class="page client-detailedview" style="display: {{ 'block' if view.client_detailedview else 'none' }}">{% include 'print_detail.html' %}</div> - {% endfor %} + {% set printview = 'detailedview' %} + {% for color_block in color_blocks %} + {% set outer_loop = loop %} + <div class="page client-detailedview" style="display: {{ 'block' if view.client_detailedview else 'none' }}">{% include 'print_detail.html' %}</div> + {% endfor %} {# operator overview #} - <div class="page operator-overview" style="display: {{ 'block' if view.operator_overview else 'none' }}">{% include 'operator_overview.html' %}</div> + <div class="page operator-overview" style="display: {{ 'block' if view.operator_overview else 'none' }}">{% include 'operator_overview.html' %}</div> {# operator detailed view #} - {% include 'operator_detailedview.html' %} + {% include 'operator_detailedview.html' %} +{# custom pages #} + <div class="page custom-page" style="display: {{ 'block' if view.custom_page else 'none' }}">{% include 'custom-page.html' %}</div> </body> </html> diff --git a/print/templates/operator_overview.html b/print/templates/operator_overview.html index 8f70b4f0..71c5ea2e 100644 --- a/print/templates/operator_overview.html +++ b/print/templates/operator_overview.html @@ -25,9 +25,12 @@ </div> </header> <main> - <figure class="inksimulation operator" data-field-name="operator-overview-transform" style="height: 210mm;" title="{{ _('Ctrl + Scroll to Zoom') }}"> + <figure class="inksimulation operator" data-field-name="operator-overview-transform" title="{{ _('Ctrl + Scroll to Zoom') }}"> {{ svg_overview|replace("<li>", "")|replace("</li>", "")|safe }} - {% include 'ui_svg_action_buttons.html' %} + {% with %} + {% set realistic_id='realistic-operator-overview' %} + {% include 'ui_svg_action_buttons.html' with context %} + {% endwith %} </figure> </main> {% include 'footer.html' %} diff --git a/print/templates/print_detail.html b/print/templates/print_detail.html index 0dca4978..f076fc04 100644 --- a/print/templates/print_detail.html +++ b/print/templates/print_detail.html @@ -17,7 +17,10 @@ <main> <figure class="inksimulation" data-field-name="client-detail-transform-block{{ loop.index0 }}" title="{{ _('Ctrl + Scroll to Zoom') }}"> {{color_block.svg_preview|replace("<li>", "")|replace("</li>", "")|safe}} - {% include 'ui_svg_action_buttons.html' %} + {% with %} + {% set loop_index=loop.index0 %} + {% include 'ui_svg_action_buttons.html' with context %} + {% endwith %} </figure> <div class="color-palette detailed"> {% include 'color_swatch.html' %} diff --git a/print/templates/print_overview.html b/print/templates/print_overview.html index d5111562..34478438 100644 --- a/print/templates/print_overview.html +++ b/print/templates/print_overview.html @@ -27,7 +27,10 @@ <main class="client-overview-main"> <figure class="inksimulation" data-field-name="client-overview-transform" title="{{ _('Ctrl + Scroll to Zoom') }}"> {{ svg_overview|replace("<li>", "")|replace("</li>", "")|safe }} - {% include 'ui_svg_action_buttons.html' %} + {% with %} + {% set realistic_id='realistic-client-overview' %} + {% include 'ui_svg_action_buttons.html' with context %} + {% endwith %} </figure> <div class="color-palette"> diff --git a/print/templates/ui.html b/print/templates/ui.html index 71908b52..23e39145 100644 --- a/print/templates/ui.html +++ b/print/templates/ui.html @@ -36,11 +36,30 @@ </fieldset> <fieldset> <legend>{{ _('Print Layouts') }}</legend> - <p><input type="checkbox" class="view" id="client-overview" data-field-name="client-overview" /><label for="client-overview">{{ _('Client Overview') }}</label></p> - <p><input type="checkbox" class="view" id="client-detailedview" data-field-name="client-detailedview" /><label for="client-detailedview">{{ _('Client Detailed View') }}</label></p> - <p><input type="checkbox" class="view" id="operator-overview" data-field-name="operator-overview" CHECKED /><label for="operator-overview">{{ _('Operator Overview') }}</label></p> - <p><input type="checkbox" class="view" id="operator-detailedview" data-field-name="operator-detailedview" CHECKED /><label for="operator-detailedview">{{ _('Operator Detailed View') }}</label></p> - <p style="text-indent: 1.5em;">{{ _('Thumbnail size') }}: <input type="range" min="15" max="110" value="15" step="5" id="operator-detailedview-thumbnail-size" data-field-name="operator-detailedview-thumbnail-size" style="vertical-align: middle;"> <span id="display-thumbnail-size">15mm</span></p> + <p> + <input type="checkbox" class="view" id="client-overview" data-field-name="client-overview" /> + <label for="client-overview">{{ _('Client Overview') }}</label> + </p> + <p> + <input type="checkbox" class="view" id="client-detailedview" data-field-name="client-detailedview" /> + <label for="client-detailedview">{{ _('Client Detailed View') }}</label> + </p> + <p> + <input type="checkbox" class="view" id="operator-overview" data-field-name="operator-overview" CHECKED /> + <label for="operator-overview">{{ _('Operator Overview') }}</label> + </p> + <p> + <input type="checkbox" class="view" id="operator-detailedview" data-field-name="operator-detailedview" CHECKED /> + <label for="operator-detailedview">{{ _('Operator Detailed View') }}</label> + </p> + <p style="text-indent: 1.5em;">{{ _('Thumbnail size') }}: + <input type="range" min="15" max="110" value="15" step="5" id="operator-detailedview-thumbnail-size" data-field-name="operator-detailedview-thumbnail-size" style="vertical-align: middle;" /> + <span id="display-thumbnail-size">15mm</span> + </p> + <p> + <input type="checkbox" class="view" id="custom-page" data-field-name="custom-page" /> + <label for="custom-page">{{ _('Custom information sheet') }}</label> + </p> </fieldset> <button class="save-settings" title="{{ _("Includes these Page Setup, estimated time settings and also the icon.") }}">{{ _("Save as defaults") }}</button> </fieldset> @@ -58,31 +77,31 @@ </fieldset> <fieldset id="edit-footer"> <legend>{{ _('Footer: Operator contact information') }}</legend> - <div id="tool-bar"> - <button id="tb-bold" class="tb-button ff-serif edit-only" title="Bold"><b>B</b></button> - <button id="tb-italic" class="tb-button ff-serif edit-only" title="Italic"><i>I</i></button> - <button id="tb-underline" class="tb-button ff-serif edit-only" title="Underline"><u>U</u></button> - <button id="tb-remove" class="tb-button ff-serif edit-only" title="Remove formatting"><u style="vertical-align: super; font-size: 60%;">A</u><span style="vertical-align: sub; font-size: 80%;">A</span></button> - <button id="tb-hyperlink" class="tb-button edit-only" title="Hyperlink">☍</button> - <button id="tb-mail" class="tb-button edit-only" title="E-Mail">✉</button> - <button id="tb-reset" class="tb-button" title="Reset text">↺</button> - <p id="edit-mode"><input type="checkbox" id="switch-mode" name="switch-mode" /> <label for="switch-mode">{{ ('Show HTML') }}</label></p> - <div id="footer-url"> - <p>{{ _("Enter URL") }}: <input type="text" id="footer-link" name="footer-link" value="https://" /></p> - <p><button id="url-ok">{{ _("OK") }}</button> <button id="url-cancel">{{ _("Cancel") }}</button></p> + <div id="tool-bar" class="tool-bar"> + <button id="tb-bold" class="tb-button tb-bold ff-serif edit-only" title="Bold"><b>B</b></button> + <button id="tb-italic" class="tb-button tb-italic ff-serif edit-only" title="Italic"><i>I</i></button> + <button id="tb-underline" class="tb-button tb-underline ff-serif edit-only" title="Underline"><u>U</u></button> + <button id="tb-remove" class="tb-button tb-remove ff-serif edit-only" title="Remove formatting"><u style="vertical-align: super; font-size: 60%;">A</u><span style="vertical-align: sub; font-size: 80%;">A</span></button> + <button id="tb-hyperlink" class="tb-button tb-hyperlink edit-only" title="Hyperlink">☍</button> + <button id="tb-mail" class="tb-button tb-mail edit-only" title="E-Mail">✉</button> + <button id="tb-reset" class="tb-button tb-reset" title="Reset text">↺</button> + <p id="edit-mode" class="edit-mode"><input type="checkbox" id="switch-mode" class="switch-mode" name="switch-mode" /> <label for="switch-mode">{{ ('Show HTML') }}</label></p> + <div id="footer-url" class="tb-popup url-window"> + <p>{{ _("Enter URL") }}: <input type="text" id="footer-link" class="user-url" name="footer-link" value="https://" /></p> + <p><button id="url-ok" class="url-ok">{{ _("OK") }}</button> <button id="url-cancel" class="url-cancel">{{ _("Cancel") }}</button></p> </div> - <div id="footer-email"> - <p>{{ _("Enter E-Mail") }}: <input type="text" id="footer-mail" name="footer-mail" value="@" /></p> - <p><button id="mail-ok">{{ _("OK") }}</button> <button id="mail-cancel">{{ _("Cancel") }}</button></p> + <div id="footer-email" class="tb-popup mail-window"> + <p>{{ _("Enter E-Mail") }}: <input type="text" id="footer-mail" class="user-mail" name="footer-mail" value="@" /></p> + <p><button id="mail-ok" class="mail-ok">{{ _("OK") }}</button> <button id="mail-cancel" class="mail-cancel">{{ _("Cancel") }}</button></p> </div> - <div id="footer-info-original">{{ _("Proudly generated with") }} <a href="http://inkstitch.org/" target="_blank">Ink/Stitch</a></div> - <div id="footer-reset"> + <div id="footer-info-original" class="original-info">{{ _("Proudly generated with") }} <a href="http://inkstitch.org/" target="_blank">Ink/Stitch</a></div> + <div id="footer-reset" class="tb-popup reset-window"> <p>{{ _("This will reset your custom text to the default.") }}</p> <p>{{ _("All changes will be lost.") }}</p> - <p><button id="reset-ok">{{ _("OK") }}</button> <button id="reset-cancel">{{ _("Cancel") }}</button></p> + <p><button id="reset-ok" class="reset-ok">{{ _("OK") }}</button> <button id="reset-cancel" class="reset-cancel">{{ _("Cancel") }}</button></p> </div> </div> - <div id="footer-info-text" contenteditable="true"><div>{{ _("Proudly generated with") }} <a href="http://inkstitch.org/" target="_blank">Ink/Stitch</a></div></div> + <div id="footer-info-text" class="info-text" contenteditable="true"><div>{{ _("Proudly generated with") }} <a href="http://inkstitch.org/" target="_blank">Ink/Stitch</a></div></div> <p class="notice--warning"><b>Note</b>: If you are using Firefox, use visible URLs. Links will not be printed to PDF with this browser.</p> </fieldset> <button class="save-settings" title="{{ _('Includes these Page Setup, estimated time settings and also the icon.') }}">{{ _("Save as defaults") }}</button> diff --git a/print/templates/ui_svg_action_buttons.html b/print/templates/ui_svg_action_buttons.html index c111d634..6b199383 100644 --- a/print/templates/ui_svg_action_buttons.html +++ b/print/templates/ui_svg_action_buttons.html @@ -4,7 +4,12 @@ <button class="svg-full">100%</button> <button class="svg-apply">{{ _('Apply to all') }}</button> <button class="svg-realistic"> - <input type="checkbox" id="realistic-operator-overview" data-field-name="overview" class="realistic" /> - <label for="realistic-operator-overview" class="realistic">{{ _('Realistic') }}</label> + {% if loop_index is defined %} + <input type="checkbox" id="realistic-color-block-{{ loop_index }}" data-field-name="block{{ loop_index }}" class="realistic" /> + <label for="realistic-color-block-{{ loop_index }}" class="realistic">{{ _('Realistic') }}</label> + {% else %} + <input type="checkbox" id="{{ realistic_id }}" data-field-name="overview" class="realistic" /> + <label for="{{ realistic_id }}" class="realistic">{{ _('Realistic') }}</label> + {% endif %} </button> </div> diff --git a/requirements.txt b/requirements.txt index e81b32e3..44d0e5fc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ shapely lxml appdirs numpy<1.16.0 -jinja2 +jinja2>2.9 requests colormath stringcase diff --git a/templates/auto_satin.inx b/templates/auto_satin.inx index d825d8a1..60ca29cd 100644 --- a/templates/auto_satin.inx +++ b/templates/auto_satin.inx @@ -11,9 +11,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Satin Tools{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Satin Tools{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/convert_to_satin.inx b/templates/convert_to_satin.inx index d214502a..d0f87911 100644 --- a/templates/convert_to_satin.inx +++ b/templates/convert_to_satin.inx @@ -9,9 +9,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Satin Tools{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Satin Tools{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/cut_satin.inx b/templates/cut_satin.inx index 4d330f06..c96d9092 100644 --- a/templates/cut_satin.inx +++ b/templates/cut_satin.inx @@ -9,9 +9,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Satin Tools{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Satin Tools{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/embroider.inx b/templates/embroider.inx index 54f3be1b..f030c8d6 100644 --- a/templates/embroider.inx +++ b/templates/embroider.inx @@ -19,10 +19,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - {# L10N This is used for the submenu under Extensions -> Ink/Stitch. Translate this to your language's word for its language, e.g. "Español" for the spanish translation. #} - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/templates/flip.inx b/templates/flip.inx index ef2000d6..763cf7cc 100644 --- a/templates/flip.inx +++ b/templates/flip.inx @@ -9,9 +9,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Satin Tools{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Satin Tools{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/global_commands.inx b/templates/global_commands.inx index eda2721d..24d42c90 100644 --- a/templates/global_commands.inx +++ b/templates/global_commands.inx @@ -13,10 +13,8 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - {# L10N Inkscape submenu under Extensions -> Ink/Stitch #} - <submenu name="{% trans %}Commands{% endtrans %}" /> - </submenu> + {# L10N Inkscape submenu under Extensions -> Ink/Stitch #} + <submenu name="{% trans %}Commands{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/install.inx b/templates/install.inx index f3aa6c0a..adfffd9d 100644 --- a/templates/install.inx +++ b/templates/install.inx @@ -8,9 +8,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/templates/layer_commands.inx b/templates/layer_commands.inx index f1a8f987..6b978e43 100644 --- a/templates/layer_commands.inx +++ b/templates/layer_commands.inx @@ -13,9 +13,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Commands{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Commands{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/lettering.inx b/templates/lettering.inx index 88d683ef..96e90ca0 100644 --- a/templates/lettering.inx +++ b/templates/lettering.inx @@ -8,10 +8,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - {# L10N This is used for the submenu under Extensions -> Ink/Stitch. Translate this to your language's word for its language, e.g. "Español" for the spanish translation. #} - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/templates/object_commands.inx b/templates/object_commands.inx index 68535db2..1b1c40d9 100644 --- a/templates/object_commands.inx +++ b/templates/object_commands.inx @@ -12,9 +12,7 @@ <object-type>all</object-type> <effects-menu> <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}"> - <submenu name="{% trans %}Commands{% endtrans %}" /> - </submenu> + <submenu name="{% trans %}Commands{% endtrans %}" /> </submenu> </effects-menu> </effect> diff --git a/templates/params.inx b/templates/params.inx index f785b15c..9f60f4ae 100644 --- a/templates/params.inx +++ b/templates/params.inx @@ -8,9 +8,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/templates/print.inx b/templates/print.inx index 9e5a9dcd..32053842 100644 --- a/templates/print.inx +++ b/templates/print.inx @@ -8,9 +8,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/templates/simulate.inx b/templates/simulate.inx index 33919cbb..90f3717c 100644 --- a/templates/simulate.inx +++ b/templates/simulate.inx @@ -8,9 +8,7 @@ <effect> <object-type>all</object-type> <effects-menu> - <submenu name="Ink/Stitch"> - <submenu name="{% trans %}English{% endtrans %}" /> - </submenu> + <submenu name="Ink/Stitch" /> </effects-menu> </effect> <script> diff --git a/translations/messages_af_ZA.po b/translations/messages_af_ZA.po index 3fbe3bd6..9f6b827c 100644 --- a/translations/messages_af_ZA.po +++ b/translations/messages_af_ZA.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Afrikaans\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ar_SA.po b/translations/messages_ar_SA.po index 6f292a7c..5dee644d 100644 --- a/translations/messages_ar_SA.po +++ b/translations/messages_ar_SA.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Arabic\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ca_ES.po b/translations/messages_ca_ES.po index 281035a1..0d424ae4 100644 --- a/translations/messages_ca_ES.po +++ b/translations/messages_ca_ES.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Catalan\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_cs_CZ.po b/translations/messages_cs_CZ.po index 759e8c90..cd800874 100644 --- a/translations/messages_cs_CZ.po +++ b/translations/messages_cs_CZ.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Czech\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_da_DK.po b/translations/messages_da_DK.po index f9f903dc..6c342492 100644 --- a/translations/messages_da_DK.po +++ b/translations/messages_da_DK.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Danish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_de_DE.po b/translations/messages_de_DE.po index 285246ac..8449b0f0 100644 --- a/translations/messages_de_DE.po +++ b/translations/messages_de_DE.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: German\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "Fehler: Es gibt mehr als einen %(command)s-Befehl in dem Dokument, aber msgid "%(command)s: %(description)s" msgstr "%(command)s: %(description)s" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "AutoFüllung" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "Automatisch geführte Füllstiche" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "Laufstichlänge (Durchlauf zwischen Sektionen)" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "Stichlänge um den Umriss des Füllbereichs, der beim Übergang von Abschnitt zu Abschnitt verwendet wird." -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "Unterlage" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "AutoFill-Unterlage" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "Füllwinkel" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "Standard: Füllwinkel + 90°" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "Reihenabstand" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "Standard: 3x Füllreihenabstand" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "Maximale Stichlänge" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "Standard: entspricht der maximalen Stichlänge" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "Einzug" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "Schrumpfen Sie die Form vor der Unterlage, um zu verhindern, dass die Unterlage um die Außenseite der Füllung herum sichtbar wird." -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "Erweitern" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "Erweitern der Form vor dem Füllstich, um Lücken zwischen den Formen auszugleichen." -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -474,15 +483,15 @@ msgstr "AutoSatin %d" msgid "AutoSatin Running Stitch %d" msgstr "AutoSatin Laufstich %d" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "Keine zu stickenden Pfade ausgewählt." -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "Keine zu stickenden Pfade im Dokument gefunden." -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "Tipp: Verwende Pfad -> Objekt zu Pfad umwandeln, um nicht-Pfade vor dem Sticken zu konvertieren." @@ -510,7 +519,7 @@ msgstr "Bitte wähle mindestens eine Zeile aus, die in eine Satinkolumne konvert msgid "Only simple lines may be converted to satin columns." msgstr "Nur einfache Linien können in Satinkolumnen konvertiert werden." -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "%s kann nicht in eine Satinkolumne konvertiert werden, da sie sich selbst berührt. Versuche es in mehrere Pfade aufzuteilen." @@ -552,8 +561,10 @@ msgid "Install" msgstr "Installieren" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "Abbrechen" @@ -682,7 +693,7 @@ msgid "A print preview has been opened in your web browser. This window will st msgstr "Eine Druckvorschau wurde im Webbrowser geöffnet. Dieses Fenster dient zur Sicherstellung der Kommunikation zwischen Inkscape und dem Browser.\n\n" "Dieses Fenster schließt automatisch, wenn die Druckvorschau geschlossen wird. Es kann auch manuell beendet werden, falls nötig." -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "Ink/Stitch Drucken" @@ -769,7 +780,7 @@ msgstr "Schritt vorwärts (+)" msgid "Switch direction (arrow left | arrow right)" msgstr "Richtung wechseln (Pfeil Links | Pfeil Rechts)" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "Pause" @@ -786,31 +797,39 @@ msgid "Restart (R)" msgstr "Neustart (R)" #: lib/gui/simulator.py:71 +msgid "O" +msgstr "" + +#: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 msgid "Quit" msgstr "Beenden" -#: lib/gui/simulator.py:73 +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "Beenden (Q)" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "Geschwindigkeit: %d Stiche/Sek" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "Start" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "Vorschau" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "Interner Fehler" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "Stick Simulation" @@ -832,18 +851,6 @@ msgstr "Ink/Stitch Text" msgid "Error writing to %(path)s: %(error)s" msgstr "Fehler beim Schreiben in %(path)s: %(error)s" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "Unerwarteter Fehler beim Generieren der Füllstiche. Bitte senden Sie die SVG-Datei an lexelby@github." - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "Stich-Plan" @@ -901,12 +908,38 @@ msgstr "nein" msgid "Enter thread name..." msgstr "Garnbezeichnung eingeben..." +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "URL eingeben" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "OK" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "E-Mail eingeben" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "Dadurch wird Ihr benutzerdefinierter Text auf den Standard zurückgesetzt." + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "Alle Änderungen gehen verloren." + #: print/templates/footer.html:2 msgid "Page" msgstr "Seite" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "Erstellt mit" @@ -1027,7 +1060,7 @@ msgstr "FARBE" msgid "Estimated time" msgstr "Voraussichtliche Dauer" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "Unterschrift Kunde" @@ -1059,11 +1092,11 @@ msgstr "Dokumenteinstellungen" msgid "Branding" msgstr "Branding" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "Voraussichtliche Dauer" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "Design" @@ -1075,125 +1108,108 @@ msgstr "Papierformat" msgid "Print Layouts" msgstr "Druck-Layouts" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "Kundenlayout: Übersicht" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "Kundenlayout: Detailansicht" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "Ausführungslayout: Übersicht" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "Ausführungslayout: Detailansicht" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "Vorschaugröße" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "Dies umfasst die Einstellungen zum Dokument, zur Berechnung der voraussichtlichen Dauer und das Logo." -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "Als Standardeinstellung speichern" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "Logo" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "Fußzeile: Kontaktinformationen des Bedieners" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "URL eingeben" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "OK" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "E-Mail eingeben" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "Dadurch wird Ihr benutzerdefinierter Text auf den Standard zurückgesetzt." - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "Alle Änderungen gehen verloren." - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "Angaben zur Stickmaschine" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "Durchschnittliche Geschwindigkeit" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "Stiche pro Minute " -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "Zeitfaktoren" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "Umfasst die durchschnittliche Zeit für die Vorbereitung der Maschine, Fadenbruch und/oder das Wechseln der Spule, etc." -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "Sekunden die der berechneten Gesamtdauer hinzugefügt werden*" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "Dies wird auf die Gesamtdauer angerechnet." -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "Sekunden für den Farbwechsel*" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "Sekunden die beim Trim-Befehl benötigt werden" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "Zeige Dauer in" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "Enthält Seiteneinrichtung, geschätzte Zeit und auch das Branding." -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "Garnpalette" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "Keine" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "Bei einer Änderung der Garnpalette werden die Garnnamen und Bestellnummern neu berechnet. Vorherige Änderungen gehen dabei verloren. Soll die Aktion ausgeführt werden?" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "Ja" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "Nein" @@ -1209,7 +1225,8 @@ msgstr "An Fenstergröße anpassen" msgid "Apply to all" msgstr "Auf alle anwenden" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "Realistische Vorschau" diff --git a/translations/messages_el_GR.po b/translations/messages_el_GR.po index c0032cc9..fd92257a 100644 --- a/translations/messages_el_GR.po +++ b/translations/messages_el_GR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Greek\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_en_US.po b/translations/messages_en_US.po index e6d4246c..e3ecbfd6 100644 --- a/translations/messages_en_US.po +++ b/translations/messages_en_US.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: English\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_es_ES.po b/translations/messages_es_ES.po index e830af7a..a451d5da 100644 --- a/translations/messages_es_ES.po +++ b/translations/messages_es_ES.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Spanish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_fi_FI.po b/translations/messages_fi_FI.po index 97a7abf6..795e406b 100644 --- a/translations/messages_fi_FI.po +++ b/translations/messages_fi_FI.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Finnish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_fr_FR.po b/translations/messages_fr_FR.po index 1b27fd04..6189af81 100644 --- a/translations/messages_fr_FR.po +++ b/translations/messages_fr_FR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: French\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "Erreur : il y a plus d’une commande de %(command)s dans le document, msgid "%(command)s: %(description)s" msgstr "%(command)s: %(description)s" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "Auto-remplissage" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "Auto-remplissage avec des points de broderie" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "Longueur du point de fonctionnement (parcours entre les sections)" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "Longueur de points autour du contour de la région de remplissage lors du déplacement de section à section." -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "Sous-couche" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "Sous-couche de remplissage automatique" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "Angle de remplissage" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "défaut : Angle de remplissage + 90 deg" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "Espacement entre rangs (lignes)" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "défaut: 3x espacement entre les rangs" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "Longueur de point maximal" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "défaut : égal à longueur max des points de remplissage" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "Incrustation" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "Rétrécir la forme avant de faire la sous-couche, pour empêcher que la sous-couche se montre en dehors du remplissage." -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "Elargir" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "Elargir la forme avant le remplissage, pour compenser les écarts entre les formes." -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "Auto-remplissage satin %d" msgid "AutoSatin Running Stitch %d" msgstr "Points droits pour auto-remplissage satin %d" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "Aucun chemin brodable sélectionné." -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "Aucun chemin brodable trouvé dans le document." -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "Astuce: utilisez Chemin -> Objet en chemin pour convertir les non-chemins." @@ -509,7 +518,7 @@ msgstr "Veuillez sélectionner au moins une ligne pour convertir en colonne sati msgid "Only simple lines may be converted to satin columns." msgstr "Seulement les lignes simples peuvent être converties en colonnes satinées." -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "Impossible de convertir %s à une colonne satinée, car elle se croise elle-même. Essayez de la séparer en plusieurs chemins." @@ -551,8 +560,10 @@ msgid "Install" msgstr "Installer" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "Quitter" @@ -680,7 +691,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "Un aperçu avant impression a été ouvert dans votre navigateur web. Cette fenêtre reste ouverte pour communiquer avec le code JavaScript s’exécutant dans votre navigateur. Cette fenêtre se fermera après avoir fermer l’aperçu avant impression dans le navigateur, vous pouvez la fermer manuellement si nécessaire." -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "Imprimer Ink/Stitch" @@ -767,7 +778,7 @@ msgstr "Aller un pas en avant (+)" msgid "Switch direction (arrow left | arrow right)" msgstr "Changer de direction (flèche à gauche | flèche à droite)" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "Pause" @@ -784,31 +795,39 @@ msgid "Restart (R)" msgstr "Redémarrer (R)" #: lib/gui/simulator.py:71 +msgid "O" +msgstr "" + +#: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 msgid "Quit" msgstr "Quitter" -#: lib/gui/simulator.py:73 +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "Quitter (Q)" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "Vitesse : %d points/sec" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "Début" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "Aperçu" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "Erreur interne" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "Simulation de broderie" @@ -830,18 +849,6 @@ msgstr "Texte Ink/Stitch" msgid "Error writing to %(path)s: %(error)s" msgstr "Erreur d’écriture pour %(path)s: %(error)s" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "Erreur inattendue lors de la génération des points de remplissage. Veuillez envoyer votre fichier SVG à lexelby@github." - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "Plan de broderie" @@ -899,12 +906,38 @@ msgstr "non" msgid "Enter thread name..." msgstr "Entrez le nom du fil..." +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "Entrez l’URL" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "OK" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "Entrez votre adresse E-Mail" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "Cela réinitialisera votre texte personnalisé au défaut." + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "Toutes les modifications seront perdues." + #: print/templates/footer.html:2 msgid "Page" msgstr "Page" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "Fièrement généré avec" @@ -1025,7 +1058,7 @@ msgstr "Couleur" msgid "Estimated time" msgstr "Durée estimée du Job" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "Signature du client" @@ -1057,11 +1090,11 @@ msgstr "Mise en page" msgid "Branding" msgstr "Image de marque" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "Durée estimée" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "Conception" @@ -1073,125 +1106,108 @@ msgstr "Taille d’impression" msgid "Print Layouts" msgstr "Mises en page d’impression" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "Vue d’ensemble du client" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "Vue détaillée de client" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "Vue d’ensemble de l’exécution" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "Vue détaillée de l'exécution" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "Taille de la miniature" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "Comprend ces paramètres de mise en page, le réglage de l'heure et l’icône." -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "Enregistrer comme valeurs par défaut" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "Logo" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "Pied de page : Coordonnées de l'opérateur" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "Entrez l’URL" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "OK" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "Entrez votre adresse E-Mail" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "Cela réinitialisera votre texte personnalisé au défaut." - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "Toutes les modifications seront perdues." - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "Réglages de la machine" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "Vitesse moyenne de la machine" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "Points par minute " -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "Facteurs de temps" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "Comprend le temps moyen de préparation de la machine, coupures de fils et/ou changement de canette, etc." -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "secondes à ajouter à la durée totale *" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "Cela s’ajoutera à la durée totale." -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "secondes nécessaires pour un changement de couleur *" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "secondes nécessaires pour une coupe de fil" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "Affichage de l’heure sur" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "Comprend la mise en page, temps estimé et aussi l’image de marque." -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "Palette de fil" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "Aucune" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "Changer la palette de fil recalculera les noms de fils et les numéros de catalogue, basé sur la nouvelle palette. Toutes les modifications apportées aux couleurs ou noms de fils seront perdues. Êtes-vous sûr/e ?" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "Oui" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "Non" @@ -1207,7 +1223,8 @@ msgstr "Ajuster" msgid "Apply to all" msgstr "Appliquer à tous" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "Réaliste" diff --git a/translations/messages_he_IL.po b/translations/messages_he_IL.po index 505c2292..85f212c9 100644 --- a/translations/messages_he_IL.po +++ b/translations/messages_he_IL.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Hebrew\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_hu_HU.po b/translations/messages_hu_HU.po index 0880e3da..0eabc6bc 100644 --- a/translations/messages_hu_HU.po +++ b/translations/messages_hu_HU.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Hungarian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_it_IT.po b/translations/messages_it_IT.po index 1e1c890c..8aa06604 100644 --- a/translations/messages_it_IT.po +++ b/translations/messages_it_IT.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Italian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ja_JP.po b/translations/messages_ja_JP.po index 5eb6df0d..8d23f487 100644 --- a/translations/messages_ja_JP.po +++ b/translations/messages_ja_JP.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Japanese\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ko_KR.po b/translations/messages_ko_KR.po index ff42f4f4..df632d87 100644 --- a/translations/messages_ko_KR.po +++ b/translations/messages_ko_KR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Korean\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_nl_NL.po b/translations/messages_nl_NL.po index 7b19727f..6cdbbfba 100644 --- a/translations/messages_nl_NL.po +++ b/translations/messages_nl_NL.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Dutch\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_no_NO.po b/translations/messages_no_NO.po index d05cc5ff..60385e0a 100644 --- a/translations/messages_no_NO.po +++ b/translations/messages_no_NO.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Norwegian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_pl_PL.po b/translations/messages_pl_PL.po index 6a65e847..8c2edda6 100644 --- a/translations/messages_pl_PL.po +++ b/translations/messages_pl_PL.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Polish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_pt_BR.po b/translations/messages_pt_BR.po index 9081f1b0..5f98320f 100644 --- a/translations/messages_pt_BR.po +++ b/translations/messages_pt_BR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Portuguese, Brazilian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_pt_PT.po b/translations/messages_pt_PT.po index 7e2f9e9e..801ea391 100644 --- a/translations/messages_pt_PT.po +++ b/translations/messages_pt_PT.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Portuguese\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "Definir enchimento automaticamente" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "Distância de ponto corrido (Transversal entre secções)" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "Sub-camada" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "Sub-camada automática" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "Distância máxima de ponto" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "Nenhum caminho bordável seleccionado." -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "Nenhum caminho bordável encontrado no documento." -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -551,8 +560,10 @@ msgid "Install" msgstr "Instalar" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "Cancelar" @@ -680,7 +691,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -767,7 +778,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -784,31 +795,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "Pré-visualização" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "Erro Interno" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "Simulação de Bordado" @@ -830,18 +849,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "Erro inesperado ao gerar pontos de enchimento. Por favor envie o seu SVG para lexelby@github." - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "Plano de pontos/bordado" @@ -899,12 +906,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "Página" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1025,7 +1058,7 @@ msgstr "COR" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1057,11 +1090,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1073,125 +1106,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1207,7 +1223,8 @@ msgstr "Ajustar" msgid "Apply to all" msgstr "Aplicar a todos" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ro_RO.po b/translations/messages_ro_RO.po index d51c1029..0348cd88 100644 --- a/translations/messages_ro_RO.po +++ b/translations/messages_ro_RO.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:33\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 02:59\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Romanian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_ru_RU.po b/translations/messages_ru_RU.po index 7fb8754c..7fec65d2 100644 --- a/translations/messages_ru_RU.po +++ b/translations/messages_ru_RU.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Russian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_sr_SP.po b/translations/messages_sr_SP.po index 0802ad40..0b2a99d9 100644 --- a/translations/messages_sr_SP.po +++ b/translations/messages_sr_SP.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Serbian (Cyrillic)\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_sv_SE.po b/translations/messages_sv_SE.po index ba221f53..e7f8c612 100644 --- a/translations/messages_sv_SE.po +++ b/translations/messages_sv_SE.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Swedish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_tr_TR.po b/translations/messages_tr_TR.po index 02603868..82ae060c 100644 --- a/translations/messages_tr_TR.po +++ b/translations/messages_tr_TR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Turkish\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_uk_UA.po b/translations/messages_uk_UA.po index 43adbf45..5e88c1fc 100644 --- a/translations/messages_uk_UA.po +++ b/translations/messages_uk_UA.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Ukrainian\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_vi_VN.po b/translations/messages_vi_VN.po index 376c61cc..22fba065 100644 --- a/translations/messages_vi_VN.po +++ b/translations/messages_vi_VN.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Vietnamese\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_zh_CN.po b/translations/messages_zh_CN.po index 3aedc1a8..4677e5d3 100644 --- a/translations/messages_zh_CN.po +++ b/translations/messages_zh_CN.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Chinese Simplified\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" diff --git a/translations/messages_zh_TW.po b/translations/messages_zh_TW.po index 72b2e41a..0c7dad5e 100644 --- a/translations/messages_zh_TW.po +++ b/translations/messages_zh_TW.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inkstitch\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2019-02-17 02:33+0000\n" -"PO-Revision-Date: 2019-02-17 02:34\n" +"POT-Creation-Date: 2019-04-11 02:59+0000\n" +"PO-Revision-Date: 2019-04-11 03:00\n" "Last-Translator: lexelby <github.com@lexneva.name>\n" "Language-Team: Chinese Traditional\n" "MIME-Version: 1.0\n" @@ -131,91 +131,100 @@ msgstr "" msgid "%(command)s: %(description)s" msgstr "" -#: lib/elements/auto_fill.py:15 +#: lib/elements/auto_fill.py:16 msgid "AutoFill" msgstr "" -#: lib/elements/auto_fill.py:18 +#: lib/elements/auto_fill.py:19 msgid "Automatically routed fill stitching" msgstr "" -#: lib/elements/auto_fill.py:38 +#: lib/elements/auto_fill.py:39 msgid "Running stitch length (traversal between sections)" msgstr "" -#: lib/elements/auto_fill.py:39 +#: lib/elements/auto_fill.py:40 msgid "Length of stitches around the outline of the fill region used when moving from section to section." msgstr "" -#: lib/elements/auto_fill.py:47 +#: lib/elements/auto_fill.py:48 msgid "Underlay" msgstr "" -#: lib/elements/auto_fill.py:47 lib/elements/auto_fill.py:56 -#: lib/elements/auto_fill.py:72 lib/elements/auto_fill.py:83 -#: lib/elements/auto_fill.py:93 lib/elements/auto_fill.py:105 +#: lib/elements/auto_fill.py:48 lib/elements/auto_fill.py:57 +#: lib/elements/auto_fill.py:73 lib/elements/auto_fill.py:84 +#: lib/elements/auto_fill.py:94 lib/elements/auto_fill.py:106 +#: lib/elements/auto_fill.py:140 msgid "AutoFill Underlay" msgstr "" -#: lib/elements/auto_fill.py:53 +#: lib/elements/auto_fill.py:54 msgid "Fill angle" msgstr "" -#: lib/elements/auto_fill.py:54 +#: lib/elements/auto_fill.py:55 msgid "default: fill angle + 90 deg" msgstr "" -#: lib/elements/auto_fill.py:69 +#: lib/elements/auto_fill.py:70 msgid "Row spacing" msgstr "" -#: lib/elements/auto_fill.py:70 +#: lib/elements/auto_fill.py:71 msgid "default: 3x fill row spacing" msgstr "" -#: lib/elements/auto_fill.py:80 +#: lib/elements/auto_fill.py:81 msgid "Max stitch length" msgstr "" -#: lib/elements/auto_fill.py:81 +#: lib/elements/auto_fill.py:82 msgid "default: equal to fill max stitch length" msgstr "" -#: lib/elements/auto_fill.py:90 +#: lib/elements/auto_fill.py:91 msgid "Inset" msgstr "" -#: lib/elements/auto_fill.py:91 +#: lib/elements/auto_fill.py:92 msgid "Shrink the shape before doing underlay, to prevent underlay from showing around the outside of the fill." msgstr "" -#: lib/elements/auto_fill.py:102 lib/elements/fill.py:47 +#: lib/elements/auto_fill.py:103 lib/elements/fill.py:47 msgid "Skip last stitch in each row" msgstr "" -#: lib/elements/auto_fill.py:103 lib/elements/fill.py:48 +#: lib/elements/auto_fill.py:104 lib/elements/fill.py:48 msgid "The last stitch in each row is quite close to the first stitch in the next row. Skipping it decreases stitch count and density." msgstr "" -#: lib/elements/auto_fill.py:113 +#: lib/elements/auto_fill.py:114 msgid "Expand" msgstr "" -#: lib/elements/auto_fill.py:114 +#: lib/elements/auto_fill.py:115 msgid "Expand the shape before fill stitching, to compensate for gaps between shapes." msgstr "" -#: lib/elements/auto_fill.py:186 +#: lib/elements/auto_fill.py:124 lib/elements/auto_fill.py:136 +msgid "Underpath" +msgstr "" + +#: lib/elements/auto_fill.py:125 lib/elements/auto_fill.py:137 +msgid "Travel inside the shape when moving from section to section. Underpath stitches avoid traveling in the direction of the row angle so that they are not visible. This gives them a jagged appearance." +msgstr "" + +#: lib/elements/auto_fill.py:213 msgid "Unable to autofill: " msgstr "" -#: lib/elements/auto_fill.py:190 +#: lib/elements/auto_fill.py:221 msgid "Error during autofill! This means that there is a problem with Ink/Stitch." msgstr "" #. this message is followed by a URL: #. https://github.com/inkstitch/inkstitch/issues/new -#: lib/elements/auto_fill.py:193 +#: lib/elements/auto_fill.py:224 msgid "If you'd like to help us make Ink/Stitch better, please paste this whole message into a new issue at: " msgstr "" @@ -473,15 +482,15 @@ msgstr "" msgid "AutoSatin Running Stitch %d" msgstr "" -#: lib/extensions/base.py:124 +#: lib/extensions/base.py:125 msgid "No embroiderable paths selected." msgstr "" -#: lib/extensions/base.py:126 +#: lib/extensions/base.py:127 msgid "No embroiderable paths found in document." msgstr "" -#: lib/extensions/base.py:127 +#: lib/extensions/base.py:128 msgid "Tip: use Path -> Object to Path to convert non-paths." msgstr "" @@ -509,7 +518,7 @@ msgstr "" msgid "Only simple lines may be converted to satin columns." msgstr "" -#: lib/extensions/convert_to_satin.py:57 +#: lib/extensions/convert_to_satin.py:58 #, python-format msgid "Cannot convert %s to a satin column because it intersects itself. Try breaking it up into multiple paths." msgstr "" @@ -550,8 +559,10 @@ msgid "Install" msgstr "" #: lib/extensions/install.py:40 lib/extensions/lettering.py:50 -#: lib/extensions/params.py:327 print/templates/ui.html:72 -#: print/templates/ui.html:76 print/templates/ui.html:82 +#: lib/extensions/params.py:327 print/templates/custom-page.html:23 +#: print/templates/custom-page.html:27 print/templates/custom-page.html:33 +#: print/templates/ui.html:91 print/templates/ui.html:95 +#: print/templates/ui.html:101 msgid "Cancel" msgstr "" @@ -679,7 +690,7 @@ msgid "A print preview has been opened in your web browser. This window will st "This window will close after you close the print preview in your browser, or you can close it manually if necessary." msgstr "" -#: lib/extensions/print_pdf.py:411 +#: lib/extensions/print_pdf.py:417 msgid "Ink/Stitch Print" msgstr "" @@ -766,7 +777,7 @@ msgstr "" msgid "Switch direction (arrow left | arrow right)" msgstr "" -#: lib/gui/simulator.py:65 lib/gui/simulator.py:218 lib/gui/simulator.py:225 +#: lib/gui/simulator.py:65 lib/gui/simulator.py:241 lib/gui/simulator.py:248 msgid "Pause" msgstr "" @@ -783,31 +794,39 @@ msgid "Restart (R)" msgstr "" #: lib/gui/simulator.py:71 -msgid "Quit" +msgid "O" msgstr "" #: lib/gui/simulator.py:73 +msgid "Display needle penetration point (O)" +msgstr "" + +#: lib/gui/simulator.py:74 +msgid "Quit" +msgstr "" + +#: lib/gui/simulator.py:76 msgid "Quit (Q)" msgstr "" -#: lib/gui/simulator.py:179 +#: lib/gui/simulator.py:188 #, python-format msgid "Speed: %d stitches/sec" msgstr "" -#: lib/gui/simulator.py:221 +#: lib/gui/simulator.py:244 lib/gui/simulator.py:272 msgid "Start" msgstr "" -#: lib/gui/simulator.py:729 lib/gui/simulator.py:741 +#: lib/gui/simulator.py:777 lib/gui/simulator.py:789 msgid "Preview" msgstr "" -#: lib/gui/simulator.py:745 +#: lib/gui/simulator.py:793 msgid "Internal Error" msgstr "" -#: lib/gui/simulator.py:774 +#: lib/gui/simulator.py:822 msgid "Embroidery Simulation" msgstr "" @@ -829,18 +848,6 @@ msgstr "" msgid "Error writing to %(path)s: %(error)s" msgstr "" -#: lib/stitches/auto_fill.py:189 -msgid "This shape is so small that it cannot be filled with rows of stitches. It would probably look best as a satin column or running stitch." -msgstr "" - -#: lib/stitches/auto_fill.py:192 -msgid "Cannot parse shape. This most often happens because your shape is made up of multiple sections that aren't connected." -msgstr "" - -#: lib/stitches/auto_fill.py:421 -msgid "Unexpected error while generating fill stitches. Please send your SVG file to lexelby@github." -msgstr "" - #: lib/svg/svg.py:97 msgid "Stitch Plan" msgstr "" @@ -898,12 +905,38 @@ msgstr "" msgid "Enter thread name..." msgstr "" +#: print/templates/custom-page.html:22 print/templates/ui.html:90 +msgid "Enter URL" +msgstr "" + +#: print/templates/custom-page.html:23 print/templates/custom-page.html:27 +#: print/templates/custom-page.html:33 print/templates/ui.html:91 +#: print/templates/ui.html:95 print/templates/ui.html:101 +msgid "OK" +msgstr "" + +#: print/templates/custom-page.html:26 print/templates/ui.html:94 +msgid "Enter E-Mail" +msgstr "" + +#: print/templates/custom-page.html:29 print/templates/custom-page.html:36 +msgid "Custom Information Sheet" +msgstr "" + +#: print/templates/custom-page.html:31 print/templates/ui.html:99 +msgid "This will reset your custom text to the default." +msgstr "" + +#: print/templates/custom-page.html:32 print/templates/ui.html:100 +msgid "All changes will be lost." +msgstr "" + #: print/templates/footer.html:2 msgid "Page" msgstr "" -#: print/templates/footer.html:3 print/templates/ui.html:78 -#: print/templates/ui.html:85 +#: print/templates/footer.html:3 print/templates/ui.html:97 +#: print/templates/ui.html:104 msgid "Proudly generated with" msgstr "" @@ -1024,7 +1057,7 @@ msgstr "" msgid "Estimated time" msgstr "" -#: print/templates/print_overview.html:39 +#: print/templates/print_overview.html:42 msgid "Client Signature" msgstr "" @@ -1056,11 +1089,11 @@ msgstr "" msgid "Branding" msgstr "" -#: print/templates/ui.html:20 print/templates/ui.html:92 +#: print/templates/ui.html:20 print/templates/ui.html:111 msgid "Estimated Time" msgstr "" -#: print/templates/ui.html:21 print/templates/ui.html:126 +#: print/templates/ui.html:21 print/templates/ui.html:145 msgid "Design" msgstr "" @@ -1072,125 +1105,108 @@ msgstr "" msgid "Print Layouts" msgstr "" -#: print/templates/ui.html:39 print/templates/ui.html:116 +#: print/templates/ui.html:41 print/templates/ui.html:135 msgid "Client Overview" msgstr "" -#: print/templates/ui.html:40 print/templates/ui.html:117 +#: print/templates/ui.html:45 print/templates/ui.html:136 msgid "Client Detailed View" msgstr "" -#: print/templates/ui.html:41 print/templates/ui.html:118 +#: print/templates/ui.html:49 print/templates/ui.html:137 msgid "Operator Overview" msgstr "" -#: print/templates/ui.html:42 print/templates/ui.html:119 +#: print/templates/ui.html:53 print/templates/ui.html:138 msgid "Operator Detailed View" msgstr "" -#: print/templates/ui.html:43 +#: print/templates/ui.html:55 msgid "Thumbnail size" msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 +#: print/templates/ui.html:61 +msgid "Custom information sheet" +msgstr "" + +#: print/templates/ui.html:64 print/templates/ui.html:107 msgid "Includes these Page Setup, estimated time settings and also the icon." msgstr "" -#: print/templates/ui.html:45 print/templates/ui.html:88 -#: print/templates/ui.html:122 +#: print/templates/ui.html:64 print/templates/ui.html:107 +#: print/templates/ui.html:141 msgid "Save as defaults" msgstr "" -#: print/templates/ui.html:50 +#: print/templates/ui.html:69 msgid "Logo" msgstr "" -#: print/templates/ui.html:60 +#: print/templates/ui.html:79 msgid "Footer: Operator contact information" msgstr "" -#: print/templates/ui.html:71 -msgid "Enter URL" -msgstr "" - -#: print/templates/ui.html:72 print/templates/ui.html:76 -#: print/templates/ui.html:82 -msgid "OK" -msgstr "" - -#: print/templates/ui.html:75 -msgid "Enter E-Mail" -msgstr "" - -#: print/templates/ui.html:80 -msgid "This will reset your custom text to the default." -msgstr "" - -#: print/templates/ui.html:81 -msgid "All changes will be lost." -msgstr "" - -#: print/templates/ui.html:94 +#: print/templates/ui.html:113 msgid "Machine Settings" msgstr "" -#: print/templates/ui.html:96 +#: print/templates/ui.html:115 msgid "Average Machine Speed" msgstr "" -#: print/templates/ui.html:97 +#: print/templates/ui.html:116 msgid "stitches per minute " msgstr "" -#: print/templates/ui.html:101 +#: print/templates/ui.html:120 msgid "Time Factors" msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "Includes average time for preparing the machine, thread breaks and/or bobbin changes, etc." msgstr "" -#: print/templates/ui.html:104 +#: print/templates/ui.html:123 msgid "seconds to add to total time*" msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "This will be added to the total time." msgstr "" -#: print/templates/ui.html:108 +#: print/templates/ui.html:127 msgid "seconds needed for a color change*" msgstr "" -#: print/templates/ui.html:111 +#: print/templates/ui.html:130 msgid "seconds needed for trim" msgstr "" -#: print/templates/ui.html:114 +#: print/templates/ui.html:133 msgid "Display Time On" msgstr "" -#: print/templates/ui.html:122 +#: print/templates/ui.html:141 msgid "Includes page setup, estimated time and also the branding." msgstr "" -#: print/templates/ui.html:127 +#: print/templates/ui.html:146 msgid "Thread Palette" msgstr "" -#: print/templates/ui.html:130 +#: print/templates/ui.html:149 msgid "None" msgstr "" -#: print/templates/ui.html:146 +#: print/templates/ui.html:165 msgid "Changing the thread palette will cause thread names and catalog numbers to be recalculated based on the new palette. Any changes you have made to color or thread names will be lost. Are you sure?" msgstr "" -#: print/templates/ui.html:149 +#: print/templates/ui.html:168 msgid "Yes" msgstr "" -#: print/templates/ui.html:150 +#: print/templates/ui.html:169 msgid "No" msgstr "" @@ -1206,7 +1222,8 @@ msgstr "" msgid "Apply to all" msgstr "" -#: print/templates/ui_svg_action_buttons.html:8 +#: print/templates/ui_svg_action_buttons.html:9 +#: print/templates/ui_svg_action_buttons.html:12 msgid "Realistic" msgstr "" |
