DeviceGraphicsContext.st
changeset 4752 e70585414d32
parent 4728 cac19e319f9a
child 4756 dd597f8839cb
--- a/DeviceGraphicsContext.st	Fri Apr 13 16:15:42 2007 +0200
+++ b/DeviceGraphicsContext.st	Tue Apr 17 14:12:33 2007 +0200
@@ -1576,7 +1576,13 @@
     fontUsed := fontUsed onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     "
@@ -1724,7 +1730,13 @@
     fontUsed := fontUsed onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     id := fontUsed fontId.
@@ -1919,7 +1931,13 @@
     fontUsed := fontUsed onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     id := fontUsed fontId.
@@ -1979,7 +1997,13 @@
     fontUsed := fontUsed onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     id := fontUsed fontId.
@@ -2946,7 +2970,13 @@
     fontUsed := font onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     id := fontUsed fontId.
@@ -3226,7 +3256,13 @@
     fontUsed := font onDevice:device.
     fontsEncoding := fontUsed encoding.
     (characterEncoding ~~ fontsEncoding) ifTrue:[
-        s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        [
+            s := CharacterEncoder encodeString:s from:characterEncoding into:fontsEncoding.
+        ] on:CharacterEncoderError do:[:ex|
+            "substitute a default value for codes that cannot be represented
+             in the new character set"
+            ex proceedWith:ex defaultValue.
+        ].
     ].
 
     id := fontUsed fontId.
@@ -3883,7 +3919,7 @@
 !DeviceGraphicsContext class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/DeviceGraphicsContext.st,v 1.112 2007-02-27 12:39:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/DeviceGraphicsContext.st,v 1.113 2007-04-17 12:12:33 stefan Exp $'
 ! !
 
 DeviceGraphicsContext initialize!