[{"data":1,"prerenderedAt":682},["ShallowReactive",2],{"help-article-\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-diagnostics":3},{"id":4,"title":5,"body":6,"category":655,"description":656,"extension":657,"keywords":658,"meta":672,"navigation":673,"order":674,"path":675,"published":676,"rawbody":677,"seo":678,"stem":679,"updated":680,"__hash__":681},"helpDe\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-diagnostics.de.md","Eine Expression funktioniert nicht?",{"type":7,"value":8,"toc":628},"minimark",[9,30,35,49,57,84,89,115,118,192,198,202,209,243,259,263,269,298,302,314,318,324,328,339,365,369,372,385,389,404,427,431,442,462,466,475,479,496,500,511,515,533,537,542,546,549,552,555,566,569,572,594,604],[10,11,12,13,17,18,21,22,25,26,29],"p",{},"Im ",[14,15,16],"place",{},"Template-Editor"," zeigt Bluepic dir, wenn eine Expression nicht funktioniert: mit einem Warnsymbol im ",[14,19,20],{},"Layers-Panel",", einem Hinweis auf dem ",[14,23,24],{},"Canvas"," oder einer roten Eigenschaft im ",[14,27,28],{},"Properties-Panel",". Manche Probleme zeigt Bluepic gar nicht an. Such dir unten aus, was du siehst. Die Ursachen stehen jeweils von der häufigsten zur seltensten.",[31,32,34],"h2",{"id":33},"neben-einem-element-steht-ein-warnsymbol","Neben einem Element steht ein Warnsymbol?",[10,36,37,38,40,41,43,44,48],{},"Ein gelbes Warndreieck neben dem Namen im ",[14,39,20],{}," heißt: Eine Expression dieses Elements lässt sich nicht ausrechnen. Oben auf dem ",[14,42,24],{}," stehen dazu die ersten zwei Meldungen. ",[45,46,47],"strong",{},"Dismiss"," blendet den Hinweis aus, bis ein neues Problem dazukommt. Bluepic prüft nur den geöffneten Canvas. Hat dein Template mehrere Canvases, öffne jeden einmal.",[10,50,51],{},[52,53],"img",{"alt":54,"src":55,"width":56},"Warnhinweis oben auf dem Canvas mit der Fehlermeldung und dem Button Dismiss.","https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-expression-diagnostics-02\u002Fpublic",554,[58,59,60],"ol",{},[61,62,63,67,68,70,71,75,76,79],"li",{},[64,65,66],"hover",{},"Fahre mit der Maus"," im ",[14,69,20],{}," über das Warnsymbol. Die Meldung erscheint. In Klammern dahinter steht die Expression, um die es geht, zum Beispiel ",[72,73,74],"code",{},"(in: headline.width > 500)",".",[77,78],"br",{},[52,80],{"alt":81,"src":82,"width":83},"Layers-Panel mit Warnsymbol bei text2; beim Darüberfahren erscheinen der Fehler und die betroffene Expression.","https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-expression-diagnostics-01\u002Fpublic",487,[85,86,88],"h3",{"id":87},"ein-element-wurde-gelöscht","Ein Element wurde gelöscht",[10,90,91,92,95,96,95,99,102,103,106,107,110,111,114],{},"Die Meldung lautet zum Beispiel „Cannot read properties of undefined (reading 'width')“. Die Expression nutzt den Namen eines Elements, das es nicht mehr gibt. Beim Löschen macht Bluepic aus Verweisen in ",[45,93,94],{},"X",", ",[45,97,98],{},"Y",[45,100,101],{},"W"," und ",[45,104,105],{},"H"," feste Zahlen. Andere Eigenschaften wie Farben, ",[45,108,109],{},"Opacity"," oder ",[45,112,113],{},"Visibility"," behalten den Verweis.",[10,116,117],{},"Hast du das Element gerade erst gelöscht, mach das Löschen rückgängig (Cmd + Z, unter Windows Strg + Z). Sonst geht es so:",[58,119,120,132,143],{},[61,121,122,67,126,128,129,131],{},[123,124,125],"click",{},"Klicke",[14,127,20],{}," auf das Element mit dem Warnsymbol. Das ",[14,130,28],{}," zeigt seine Eigenschaften.",[61,133,134,67,136,138,139,142],{},[64,135,66],{},[14,137,28],{}," über die Eigenschaft mit der Expression aus der Meldung. Ein Menü mit ",[45,140,141],{},"Edit expression"," öffnet sich.",[61,144,145,146,189,191],{},"Je nachdem, was die Eigenschaft tun soll:",[147,148,149,172],"ul",{},[61,150,151,154,155],{},[152,153],"right",{}," Sie soll weiter von einem Element abhängen:\n",[147,156,157,165],{},[61,158,159,161,162,164],{},[123,160,125],{}," auf ",[45,163,141],{},". Der Expression-Editor öffnet sich.",[61,166,167,171],{},[168,169,170],"type",{},"Ersetze"," den alten Namen durch den Namen eines Elements, das es gibt.",[61,173,174,176,177],{},[152,175],{}," Ein fester Wert reicht:\n",[147,178,179],{},[61,180,181,184,185,188],{},[168,182,183],{},"Gib"," den Wert direkt in die Eigenschaft ein, zum Beispiel ",[72,186,187],{},"#000000"," für eine Farbe.",[77,190],{},"Das Warnsymbol verschwindet.",[10,193,194,197],{},[45,195,196],{},"Resolve expression"," hilft hier nicht. Bluepic kann die Expression nicht ausrechnen und meldet „Error resolving expression“.",[85,199,201],{"id":200},"zwei-elemente-hängen-im-kreis-voneinander-ab","Zwei Elemente hängen im Kreis voneinander ab",[10,203,204,205,208],{},"Die Meldung beginnt mit „Circular dependency between expressions“ und nennt die beteiligten Eigenschaften, zum Beispiel ",[72,206,207],{},"headline.y → caption.y → headline.y",". Manchmal lautet sie „Expression evaluation storm“. Jedes Element im Kreis hat das Warnsymbol. Das passiert, wenn zum Beispiel die Überschrift der Caption folgt und die Caption der Überschrift. Lass nur eines der beiden dem anderen folgen:",[58,210,211,230,238],{},[61,212,213,215,216,219,220,75,223,225],{},[123,214,125],{}," in der ",[14,217,218],{},"Toolbar"," oben auf den Anker. Das ist das ",[45,221,222],{},"Anchoring tool",[77,224],{},[52,226],{"alt":227,"src":228,"width":229},"Toolbar mit markiertem Anchoring tool.","https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-anchoring-tool-03\u002Fpublic",632,[61,231,232,234,235,237],{},[123,233,125],{}," auf dem ",[14,236,24],{}," auf das Element, das nicht folgen soll. Seine Verbindungen erscheinen.",[61,239,240,242],{},[123,241,125],{}," auf das × an der Verbindung zum anderen Element. Die Verbindung ist gelöst, und das Element bleibt an seiner Stelle.",[10,244,245,246,248,249,251,252,254,255,258],{},"Erscheint keine Verbindung, ist die Expression keine einfache Verbindung. ",[168,247,183],{}," dann im ",[14,250,28],{}," in die Eigenschaft aus der Meldung eine feste Zahl ein, zum Beispiel bei ",[45,253,98],{}," ",[72,256,257],{},"300",". Das Element bleibt an dieser Stelle und folgt dem anderen nicht mehr.",[85,260,262],{"id":261},"die-breite-eines-texts-ist-keine-zahl","Die Breite eines Texts ist keine Zahl",[10,264,265,266,268],{},"Die Meldung beginnt mit „Text wrap width is not a finite number“ oder „Line breaking could not judge“. ",[45,267,101],{}," des Texts ist eine Expression, die keine Zahl ergibt. Bluepic setzt den Text dann ohne Zeilenumbruch.",[58,270,271,280],{},[61,272,273,67,275,277,278,131],{},[123,274,125],{},[14,276,20],{}," auf den Text mit dem Warnsymbol. Das ",[14,279,28],{},[61,281,282,67,284,286,287,290,291,293,294,297],{},[168,283,183],{},[14,285,28],{}," unter ",[45,288,289],{},"Size"," bei ",[45,292,101],{}," eine feste Breite ein, zum Beispiel ",[72,295,296],{},"600",". Der Text bricht wieder um.",[85,299,301],{"id":300},"die-expression-enthält-code-den-bluepic-nicht-ausführt","Die Expression enthält Code, den Bluepic nicht ausführt",[10,303,304,305,307,308,313],{},"Die Meldung beginnt mit „Expression rejected by safety validator“. Expressions ähneln der Programmiersprache JavaScript, und viele Code-Beispiele im Internet sind in JavaScript geschrieben. Bluepic führt aus Sicherheitsgründen aber nicht alles davon aus, das passiert oft bei einem kopierten Code-Beispiel. Öffne die Expression mit ",[45,306,141],{}," und schreib sie mit den Funktionen aus der ",[309,310,312],"a",{"href":311},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Ffunctions","Übersicht der Expression-Funktionen"," neu.",[31,315,317],{"id":316},"eine-eigenschaft-wird-beim-tippen-rot","Eine Eigenschaft wird beim Tippen rot?",[10,319,320,321,323],{},"Tippst du im ",[14,322,28],{}," eine Expression in eine Eigenschaft, prüft Bluepic sie bei jedem Zeichen. Ist sie fehlerhaft, wird die Eigenschaft rot, und daneben steht eine Meldung. Während du tippst, ist das normal. Bluepic übernimmt nur fehlerfreie Expressions. Klickst du woanders hin, steht dort wieder der letzte Wert, der funktioniert hat.",[85,325,327],{"id":326},"ein-name-ist-falsch-geschrieben","Ein Name ist falsch geschrieben",[10,329,330,331,334,335,338],{},"Die Meldung endet mit „is not defined“, zum Beispiel „headlin is not defined“. Bluepic kennt den Namen nicht. Das gilt auch für Funktionen: ",[72,332,333],{},"FLOR"," statt ",[72,336,337],{},"FLOOR"," ergibt „FLOR is not defined“.",[58,340,341,359],{},[61,342,343,347,348,350,351,354,355,358],{},[344,345,346],"look",{},"Vergleiche"," den Namen mit dem Namen des Elements im ",[14,349,20],{}," oder mit ",[45,352,353],{},"Variable name"," des Input-Felds im ",[14,356,357],{},"Input Fields View",". Groß- und Kleinschreibung zählt.",[61,360,361,364],{},[168,362,363],{},"Korrigiere"," den Namen in der Eigenschaft. Die Eigenschaft ist nicht mehr rot.",[85,366,368],{"id":367},"ein-zeichen-fehlt-oder-ist-zu-viel","Ein Zeichen fehlt oder ist zu viel",[10,370,371],{},"Die Meldung beginnt mit „Error parsing expression“.",[58,373,374,380],{},[61,375,376,379],{},[344,377,378],{},"Prüfe",", ob jede Klammer geschlossen ist, Werte durch Kommas getrennt sind und Text und Farben in Backticks stehen.",[61,381,382,384],{},[168,383,363],{}," die Stelle. Die Eigenschaft ist nicht mehr rot.",[85,386,388],{"id":387},"eine-farbe-bekommt-keinen-farbwert","Eine Farbe bekommt keinen Farbwert",[10,390,391,392,395,396,399,400,403],{},"Die Meldung lautet „Invalid color“. In einer Farbeigenschaft wie ",[45,393,394],{},"Fill Color"," zählt alles, was du tippst, als Text. Ein Farbcode braucht ein ",[72,397,398],{},"#"," am Anfang. Eine Expression wie ",[72,401,402],{},"IF(…)"," ergibt dort keine Farbe. Schreib Expressions für Farben im Expression-Editor:",[58,405,406,416],{},[61,407,408,215,410,412,413,75],{},[123,409,125],{},[14,411,218],{}," oben auf das kursive fx. Das ist das Werkzeug ",[45,414,415],{},"Connect expressions",[61,417,418,67,420,422,423,75],{},[123,419,125],{},[14,421,28],{}," auf den Farbwert. Der Expression-Editor öffnet sich. Wie es weitergeht, steht in ",[309,424,426],{"href":425},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fguide-if-else-logic","IF \u002F ELSE-Logik: zwischen zwei Ergebnissen umschalten",[31,428,430],{"id":429},"die-expression-steht-als-text-im-design","Die Expression steht als Text im Design?",[10,432,433,434,437,438,441],{},"In einer Texteigenschaft wie ",[45,435,436],{},"Content"," zählt alles, was du tippst, als Text. Tippst du ",[72,439,440],{},"headline.width",", steht genau das im Design.",[58,443,444],{},[61,445,446,449,450,453,454,457,458,75],{},[168,447,448],{},"Schreib"," den Teil, der berechnet werden soll, in ",[72,451,452],{},"${…}",", zum Beispiel ",[72,455,456],{},"Breite: ${headline.width}",". Im Design steht jetzt der Wert. Mehr dazu steht in ",[309,459,461],{"href":460},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-syntax#werte-im-text","Expression-Syntax",[31,463,465],{"id":464},"ein-element-bewegt-sich-nicht-mehr-mit-oder-steht-an-der-falschen-stelle","Ein Element bewegt sich nicht mehr mit oder steht an der falschen Stelle?",[10,467,468,469,290,472,474],{},"Du hast ein Element mit einer Expression an ein anderes gebunden, zum Beispiel mit ",[72,470,471],{},"headline.bottom + 20",[45,473,98],{},". Jetzt bewegt es sich nicht mehr mit, wenn das andere Element wächst oder wandert, oder es steht an einer ganz anderen Stelle. Für diese Fälle zeigt Bluepic weder ein Warnsymbol noch eine Meldung.",[85,476,478],{"id":477},"das-andere-element-wurde-gelöscht","Das andere Element wurde gelöscht",[10,480,481,482,95,484,95,486,102,488,490,491,495],{},"Beim Löschen macht Bluepic aus allen ",[45,483,94],{},[45,485,98],{},[45,487,101],{},[45,489,105],{},", die auf das Element verweisen, feste Zahlen. Die übrigen Elemente bleiben an ihrer Stelle, folgen aber nichts mehr. Mach das Löschen rückgängig oder verbinde die Elemente neu, wie in ",[309,492,494],{"href":493},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fguide-dynamic-text-layouts","Dynamische Textlayouts mit Expressions"," beschrieben.",[85,497,499],{"id":498},"die-elemente-liegen-in-verschiedenen-gruppen","Die Elemente liegen in verschiedenen Gruppen",[10,501,502,503,505,506,510],{},"Das Element folgt, sitzt aber an einer ganz anderen Stelle. Die Werte eines Elements in einer Gruppe gehen von der Gruppe aus, nicht vom ",[14,504,24],{},". Lege beide Elemente in dieselbe Gruppe oder beide außerhalb von Gruppen. Oder verbinde sie mit dem ",[309,507,509],{"href":508},"\u002Fde\u002Fhelp\u002Fdesign-elements-and-tools\u002Fanchoring-tool","Anchoring-Werkzeug",". Es rechnet Gruppen selbst ein.",[85,512,514],{"id":513},"das-andere-element-ist-gedreht-oder-skaliert","Das andere Element ist gedreht oder skaliert",[10,516,517,518,521,522,453,525,528,529,75],{},"Die einfachen Werte wie ",[72,519,520],{},"logo.right"," zählen die Drehung und Skalierung eines Elements nicht mit. Nimm stattdessen die Werte mit ",[72,523,524],{},".bbox",[72,526,527],{},"logo.bbox.right + 20",". Mehr dazu steht in ",[309,530,532],{"href":531},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Felement-metadata-subproperties","Werte von Elementen in Expressions",[85,534,536],{"id":535},"die-expression-wurde-in-einen-festen-wert-umgewandelt","Die Expression wurde in einen festen Wert umgewandelt",[10,538,539,541],{},[45,540,196],{}," ersetzt eine Expression durch ihr aktuelles Ergebnis. Danach reagiert die Eigenschaft auf nichts mehr. Mach den Schritt rückgängig oder gib die Expression neu ein.",[31,543,545],{"id":544},"änderungen-im-expression-editor-werden-nicht-übernommen","Änderungen im Expression-Editor werden nicht übernommen?",[10,547,548],{},"Im Expression-Editor übernimmt Bluepic jede fehlerfreie Änderung sofort, fehlerhafte nicht. Schließt du den Expression-Editor, bleibt die letzte Expression, die funktioniert hat.",[85,550,368],{"id":551},"ein-zeichen-fehlt-oder-ist-zu-viel-1",[10,553,554],{},"In der Code-Ansicht erscheint oben rechts ein kleiner roter Kasten.",[58,556,557,561],{},[61,558,559,379],{},[344,560,378],{},[61,562,563,565],{},[168,564,363],{}," die Stelle. Der rote Kasten verschwindet, und Bluepic übernimmt die Änderung.",[85,567,327],{"id":568},"ein-name-ist-falsch-geschrieben-1",[10,570,571],{},"Hier zeigt Bluepic keine Meldung. Die Expression bleibt einfach, wie sie vorher war.",[58,573,574,589],{},[61,575,576,578,579,95,582,102,585,588],{},[344,577,346],{}," jeden Namen in der Expression mit den Tabs ",[45,580,581],{},"Elements",[45,583,584],{},"Variables",[45,586,587],{},"Functions"," in der visuellen Ansicht. Groß- und Kleinschreibung zählt.",[61,590,591,593],{},[168,592,363],{}," den Namen. Bluepic übernimmt die Änderung.",[595,596,597],"tip",{},[10,598,599,600,603],{},"Teste dein Template im ",[14,601,602],{},"Design-Generator"," mit langen und mit leeren Eingaben, bevor du den Link weitergibst. So siehst du, ob die Expressions auch dann funktionieren.",[605,606,607],"related",{},[147,608,609,615,620,624],{},[61,610,611],{},[309,612,614],{"href":613},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-tool","Expression-Editor verwenden",[61,616,617],{},[309,618,461],{"href":619},"\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-syntax",[61,621,622],{},[309,623,312],{"href":311},[61,625,626],{},[309,627,532],{"href":531},{"title":629,"searchDepth":630,"depth":630,"links":631},"",2,[632,639,644,645,651],{"id":33,"depth":630,"text":34,"children":633},[634,636,637,638],{"id":87,"depth":635,"text":88},3,{"id":200,"depth":635,"text":201},{"id":261,"depth":635,"text":262},{"id":300,"depth":635,"text":301},{"id":316,"depth":630,"text":317,"children":640},[641,642,643],{"id":326,"depth":635,"text":327},{"id":367,"depth":635,"text":368},{"id":387,"depth":635,"text":388},{"id":429,"depth":630,"text":430},{"id":464,"depth":630,"text":465,"children":646},[647,648,649,650],{"id":477,"depth":635,"text":478},{"id":498,"depth":635,"text":499},{"id":513,"depth":635,"text":514},{"id":535,"depth":635,"text":536},{"id":544,"depth":630,"text":545,"children":652},[653,654],{"id":551,"depth":635,"text":368},{"id":568,"depth":635,"text":327},"expressions-and-logic","Warnsymbol, rote Eigenschaft oder ein Element, das nicht mehr mitgeht: So findest du die Ursache und behebst sie.","md",[659,660,661,662,663,664,665,666,47,667,668,669,670,671,141,196],"expression error","warning","diagnostics","broken","Fehler","Warnsymbol","Warnung","funktioniert nicht","is not defined","Cannot read properties of undefined","Circular dependency","Invalid color","Error parsing expression",{},true,90,"\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-diagnostics.de","2026-09-17","---\ntitle: \"Eine Expression funktioniert nicht?\"\ndescription: \"Warnsymbol, rote Eigenschaft oder ein Element, das nicht mehr mitgeht: So findest du die Ursache und behebst sie.\"\ncategory: expressions-and-logic\norder: 90\nkeywords: [\"expression error\", \"warning\", \"diagnostics\", \"broken\", \"Fehler\", \"Warnsymbol\", \"Warnung\", \"funktioniert nicht\", \"Dismiss\", \"is not defined\", \"Cannot read properties of undefined\", \"Circular dependency\", \"Invalid color\", \"Error parsing expression\", \"Edit expression\", \"Resolve expression\"]\n---\n\nIm :place[Template-Editor] zeigt Bluepic dir, wenn eine Expression nicht funktioniert: mit einem Warnsymbol im :place[Layers-Panel], einem Hinweis auf dem :place[Canvas] oder einer roten Eigenschaft im :place[Properties-Panel]. Manche Probleme zeigt Bluepic gar nicht an. Such dir unten aus, was du siehst. Die Ursachen stehen jeweils von der häufigsten zur seltensten.\n\n## Neben einem Element steht ein Warnsymbol?\n\nEin gelbes Warndreieck neben dem Namen im :place[Layers-Panel] heißt: Eine Expression dieses Elements lässt sich nicht ausrechnen. Oben auf dem :place[Canvas] stehen dazu die ersten zwei Meldungen. **Dismiss** blendet den Hinweis aus, bis ein neues Problem dazukommt. Bluepic prüft nur den geöffneten Canvas. Hat dein Template mehrere Canvases, öffne jeden einmal.\n\n![Warnhinweis oben auf dem Canvas mit der Fehlermeldung und dem Button Dismiss.](https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-expression-diagnostics-02\u002Fpublic){width=\"554\"}\n\n1. :hover[Fahre mit der Maus] im :place[Layers-Panel] über das Warnsymbol. Die Meldung erscheint. In Klammern dahinter steht die Expression, um die es geht, zum Beispiel `(in: headline.width > 500)`.\n\n   ![Layers-Panel mit Warnsymbol bei text2; beim Darüberfahren erscheinen der Fehler und die betroffene Expression.](https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-expression-diagnostics-01\u002Fpublic){width=\"487\"}\n\n### Ein Element wurde gelöscht\n\nDie Meldung lautet zum Beispiel „Cannot read properties of undefined (reading 'width')“. Die Expression nutzt den Namen eines Elements, das es nicht mehr gibt. Beim Löschen macht Bluepic aus Verweisen in **X**, **Y**, **W** und **H** feste Zahlen. Andere Eigenschaften wie Farben, **Opacity** oder **Visibility** behalten den Verweis.\n\nHast du das Element gerade erst gelöscht, mach das Löschen rückgängig (Cmd + Z, unter Windows Strg + Z). Sonst geht es so:\n\n1. :click[Klicke] im :place[Layers-Panel] auf das Element mit dem Warnsymbol. Das :place[Properties-Panel] zeigt seine Eigenschaften.\n2. :hover[Fahre mit der Maus] im :place[Properties-Panel] über die Eigenschaft mit der Expression aus der Meldung. Ein Menü mit **Edit expression** öffnet sich.\n3. Je nachdem, was die Eigenschaft tun soll:\n\n   - :right Sie soll weiter von einem Element abhängen:\n     - :click[Klicke] auf **Edit expression**. Der Expression-Editor öffnet sich.\n     - :type[Ersetze] den alten Namen durch den Namen eines Elements, das es gibt.\n   - :right Ein fester Wert reicht:\n     - :type[Gib] den Wert direkt in die Eigenschaft ein, zum Beispiel `#000000` für eine Farbe.\n\n   Das Warnsymbol verschwindet.\n\n**Resolve expression** hilft hier nicht. Bluepic kann die Expression nicht ausrechnen und meldet „Error resolving expression“.\n\n### Zwei Elemente hängen im Kreis voneinander ab\n\nDie Meldung beginnt mit „Circular dependency between expressions“ und nennt die beteiligten Eigenschaften, zum Beispiel `headline.y → caption.y → headline.y`. Manchmal lautet sie „Expression evaluation storm“. Jedes Element im Kreis hat das Warnsymbol. Das passiert, wenn zum Beispiel die Überschrift der Caption folgt und die Caption der Überschrift. Lass nur eines der beiden dem anderen folgen:\n\n1. :click[Klicke] in der :place[Toolbar] oben auf den Anker. Das ist das **Anchoring tool**.\n\n   ![Toolbar mit markiertem Anchoring tool.](https:\u002F\u002Fimagedelivery.net\u002FmudX-CmAqIANL8bxoNCToA\u002Fhelp\u002FKB-anchoring-tool-03\u002Fpublic){width=\"632\"}\n\n2. :click[Klicke] auf dem :place[Canvas] auf das Element, das nicht folgen soll. Seine Verbindungen erscheinen.\n3. :click[Klicke] auf das × an der Verbindung zum anderen Element. Die Verbindung ist gelöst, und das Element bleibt an seiner Stelle.\n\nErscheint keine Verbindung, ist die Expression keine einfache Verbindung. :type[Gib] dann im :place[Properties-Panel] in die Eigenschaft aus der Meldung eine feste Zahl ein, zum Beispiel bei **Y** `300`. Das Element bleibt an dieser Stelle und folgt dem anderen nicht mehr.\n\n### Die Breite eines Texts ist keine Zahl\n\nDie Meldung beginnt mit „Text wrap width is not a finite number“ oder „Line breaking could not judge“. **W** des Texts ist eine Expression, die keine Zahl ergibt. Bluepic setzt den Text dann ohne Zeilenumbruch.\n\n1. :click[Klicke] im :place[Layers-Panel] auf den Text mit dem Warnsymbol. Das :place[Properties-Panel] zeigt seine Eigenschaften.\n2. :type[Gib] im :place[Properties-Panel] unter **Size** bei **W** eine feste Breite ein, zum Beispiel `600`. Der Text bricht wieder um.\n\n### Die Expression enthält Code, den Bluepic nicht ausführt\n\nDie Meldung beginnt mit „Expression rejected by safety validator“. Expressions ähneln der Programmiersprache JavaScript, und viele Code-Beispiele im Internet sind in JavaScript geschrieben. Bluepic führt aus Sicherheitsgründen aber nicht alles davon aus, das passiert oft bei einem kopierten Code-Beispiel. Öffne die Expression mit **Edit expression** und schreib sie mit den Funktionen aus der [Übersicht der Expression-Funktionen](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Ffunctions) neu.\n\n## Eine Eigenschaft wird beim Tippen rot?\n\nTippst du im :place[Properties-Panel] eine Expression in eine Eigenschaft, prüft Bluepic sie bei jedem Zeichen. Ist sie fehlerhaft, wird die Eigenschaft rot, und daneben steht eine Meldung. Während du tippst, ist das normal. Bluepic übernimmt nur fehlerfreie Expressions. Klickst du woanders hin, steht dort wieder der letzte Wert, der funktioniert hat.\n\n### Ein Name ist falsch geschrieben\n\nDie Meldung endet mit „is not defined“, zum Beispiel „headlin is not defined“. Bluepic kennt den Namen nicht. Das gilt auch für Funktionen: `FLOR` statt `FLOOR` ergibt „FLOR is not defined“.\n\n1. :look[Vergleiche] den Namen mit dem Namen des Elements im :place[Layers-Panel] oder mit **Variable name** des Input-Felds im :place[Input Fields View]. Groß- und Kleinschreibung zählt.\n2. :type[Korrigiere] den Namen in der Eigenschaft. Die Eigenschaft ist nicht mehr rot.\n\n### Ein Zeichen fehlt oder ist zu viel\n\nDie Meldung beginnt mit „Error parsing expression“.\n\n1. :look[Prüfe], ob jede Klammer geschlossen ist, Werte durch Kommas getrennt sind und Text und Farben in Backticks stehen.\n2. :type[Korrigiere] die Stelle. Die Eigenschaft ist nicht mehr rot.\n\n### Eine Farbe bekommt keinen Farbwert\n\nDie Meldung lautet „Invalid color“. In einer Farbeigenschaft wie **Fill Color** zählt alles, was du tippst, als Text. Ein Farbcode braucht ein `#` am Anfang. Eine Expression wie `IF(…)` ergibt dort keine Farbe. Schreib Expressions für Farben im Expression-Editor:\n\n1. :click[Klicke] in der :place[Toolbar] oben auf das kursive fx. Das ist das Werkzeug **Connect expressions**.\n2. :click[Klicke] im :place[Properties-Panel] auf den Farbwert. Der Expression-Editor öffnet sich. Wie es weitergeht, steht in [IF \u002F ELSE-Logik: zwischen zwei Ergebnissen umschalten](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fguide-if-else-logic).\n\n## Die Expression steht als Text im Design?\n\nIn einer Texteigenschaft wie **Content** zählt alles, was du tippst, als Text. Tippst du `headline.width`, steht genau das im Design.\n\n1. :type[Schreib] den Teil, der berechnet werden soll, in `${…}`, zum Beispiel `Breite: ${headline.width}`. Im Design steht jetzt der Wert. Mehr dazu steht in [Expression-Syntax](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-syntax#werte-im-text).\n\n## Ein Element bewegt sich nicht mehr mit oder steht an der falschen Stelle?\n\nDu hast ein Element mit einer Expression an ein anderes gebunden, zum Beispiel mit `headline.bottom + 20` bei **Y**. Jetzt bewegt es sich nicht mehr mit, wenn das andere Element wächst oder wandert, oder es steht an einer ganz anderen Stelle. Für diese Fälle zeigt Bluepic weder ein Warnsymbol noch eine Meldung.\n\n### Das andere Element wurde gelöscht\n\nBeim Löschen macht Bluepic aus allen **X**, **Y**, **W** und **H**, die auf das Element verweisen, feste Zahlen. Die übrigen Elemente bleiben an ihrer Stelle, folgen aber nichts mehr. Mach das Löschen rückgängig oder verbinde die Elemente neu, wie in [Dynamische Textlayouts mit Expressions](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fguide-dynamic-text-layouts) beschrieben.\n\n### Die Elemente liegen in verschiedenen Gruppen\n\nDas Element folgt, sitzt aber an einer ganz anderen Stelle. Die Werte eines Elements in einer Gruppe gehen von der Gruppe aus, nicht vom :place[Canvas]. Lege beide Elemente in dieselbe Gruppe oder beide außerhalb von Gruppen. Oder verbinde sie mit dem [Anchoring-Werkzeug](\u002Fde\u002Fhelp\u002Fdesign-elements-and-tools\u002Fanchoring-tool). Es rechnet Gruppen selbst ein.\n\n### Das andere Element ist gedreht oder skaliert\n\nDie einfachen Werte wie `logo.right` zählen die Drehung und Skalierung eines Elements nicht mit. Nimm stattdessen die Werte mit `.bbox`, zum Beispiel `logo.bbox.right + 20`. Mehr dazu steht in [Werte von Elementen in Expressions](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Felement-metadata-subproperties).\n\n### Die Expression wurde in einen festen Wert umgewandelt\n\n**Resolve expression** ersetzt eine Expression durch ihr aktuelles Ergebnis. Danach reagiert die Eigenschaft auf nichts mehr. Mach den Schritt rückgängig oder gib die Expression neu ein.\n\n## Änderungen im Expression-Editor werden nicht übernommen?\n\nIm Expression-Editor übernimmt Bluepic jede fehlerfreie Änderung sofort, fehlerhafte nicht. Schließt du den Expression-Editor, bleibt die letzte Expression, die funktioniert hat.\n\n### Ein Zeichen fehlt oder ist zu viel\n\nIn der Code-Ansicht erscheint oben rechts ein kleiner roter Kasten.\n\n1. :look[Prüfe], ob jede Klammer geschlossen ist, Werte durch Kommas getrennt sind und Text und Farben in Backticks stehen.\n2. :type[Korrigiere] die Stelle. Der rote Kasten verschwindet, und Bluepic übernimmt die Änderung.\n\n### Ein Name ist falsch geschrieben\n\nHier zeigt Bluepic keine Meldung. Die Expression bleibt einfach, wie sie vorher war.\n\n1. :look[Vergleiche] jeden Namen in der Expression mit den Tabs **Elements**, **Variables** und **Functions** in der visuellen Ansicht. Groß- und Kleinschreibung zählt.\n2. :type[Korrigiere] den Namen. Bluepic übernimmt die Änderung.\n\n::tip\nTeste dein Template im :place[Design-Generator] mit langen und mit leeren Eingaben, bevor du den Link weitergibst. So siehst du, ob die Expressions auch dann funktionieren.\n::\n\n::related\n- [Expression-Editor verwenden](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-tool)\n- [Expression-Syntax](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Fexpression-syntax)\n- [Übersicht der Expression-Funktionen](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Ffunctions)\n- [Werte von Elementen in Expressions](\u002Fde\u002Fhelp\u002Fexpressions-and-logic\u002Felement-metadata-subproperties)\n::\n",{"title":5,"description":656},"help\u002Fexpressions-and-logic\u002Fexpression-diagnostics.de","2026-10-22","8Izm8bGjkUd09ESW7RbIARtduVq7RCAcf1O5h4ZJRMA",1792680564574]