I seem to remember, as do some other draughtsmen in this drawing office,
when you could mirror a block with text in, and the text wouldn't get mirrored.
Was that the case?
You can't do that now, that I know of, the text always get mirrored, mirrtext 0 or 1
Mirrtext works with individual text entites, but not with blocks.
Is there a way of getting the text in blocks not to mirror?
It would be very useful!!
Right now I am having to rotate my block and then reposition it.
I can do that, since my block is symmetrical.
If my block was not symmetrical I wouldn't be able to do this,
but would have to create a second block of the same thing, with the
outline of the block mirrored and the text reinserted again.
Michael Kovacik
AutoCAD 2d & 3d (29 yrs)& Inventor (7 yrs)
Manufacturing (30 yrs) Draughtsman
Autodesk Product Design Suite Ultimate 2018
Johannesburg, South Africa
Solved! Go to Solution.
I seem to remember, as do some other draughtsmen in this drawing office,
when you could mirror a block with text in, and the text wouldn't get mirrored.
Was that the case?
You can't do that now, that I know of, the text always get mirrored, mirrtext 0 or 1
Mirrtext works with individual text entites, but not with blocks.
Is there a way of getting the text in blocks not to mirror?
It would be very useful!!
Right now I am having to rotate my block and then reposition it.
I can do that, since my block is symmetrical.
If my block was not symmetrical I wouldn't be able to do this,
but would have to create a second block of the same thing, with the
outline of the block mirrored and the text reinserted again.
Michael Kovacik
AutoCAD 2d & 3d (29 yrs)& Inventor (7 yrs)
Manufacturing (30 yrs) Draughtsman
Autodesk Product Design Suite Ultimate 2018
Johannesburg, South Africa
Solved! Go to Solution.
Solved by 3wood. Go to Solution.
It is not just the MIRRTEXT - see the many options for text mirroring in blocks (inc. dynamic blocks):
http://www.cadforum.cz/cadforum_en/qaID.asp?tip=6251
Vladimir Michl, www.cadstudio.cz www.cadforum.cz
It is not just the MIRRTEXT - see the many options for text mirroring in blocks (inc. dynamic blocks):
http://www.cadforum.cz/cadforum_en/qaID.asp?tip=6251
Vladimir Michl, www.cadstudio.cz www.cadforum.cz
You need use ATTRIBUTE instead of simple TEXT object inside a block to allow it ignoring mirroring of the block.
You need use ATTRIBUTE instead of simple TEXT object inside a block to allow it ignoring mirroring of the block.
okay
now I have solved the text mirroring problem.by using attributes instead,
I can't do a background mask on an attribute like I did on the text.
See attached.
Is there any way of doing this, without having to do a complicated
"wipeout" setup
Michael Kovacik
AutoCAD 2d & 3d (29 yrs)& Inventor (7 yrs)
Manufacturing (30 yrs) Draughtsman
Autodesk Product Design Suite Ultimate 2018
Johannesburg, South Africa
okay
now I have solved the text mirroring problem.by using attributes instead,
I can't do a background mask on an attribute like I did on the text.
See attached.
Is there any way of doing this, without having to do a complicated
"wipeout" setup
Michael Kovacik
AutoCAD 2d & 3d (29 yrs)& Inventor (7 yrs)
Manufacturing (30 yrs) Draughtsman
Autodesk Product Design Suite Ultimate 2018
Johannesburg, South Africa
Mike wrote:
okay
now I have solved the text mirroring problem.by using attributes instead,
I can't do a background mask on an attribute like I did on the text.
See attached.
Is there any way of doing this, without having to do a complicated
"wipeout" setup
Mike,
Here is how I do provide background masking on attributes. Open your block in the "Block Editor". Select the attribute, and select "Properties". Go down to "multiple Lines" and select "Yes". You now have Mtext. Double-click on the Mtext and you will see a smal editing box. Select it, and it will open an Mtext box. You make now make a "background mask".
Good luck,
Mike wrote:
okay
now I have solved the text mirroring problem.by using attributes instead,
I can't do a background mask on an attribute like I did on the text.
See attached.
Is there any way of doing this, without having to do a complicated
"wipeout" setup
Mike,
Here is how I do provide background masking on attributes. Open your block in the "Block Editor". Select the attribute, and select "Properties". Go down to "multiple Lines" and select "Yes". You now have Mtext. Double-click on the Mtext and you will see a smal editing box. Select it, and it will open an Mtext box. You make now make a "background mask".
Good luck,
attdef or mirrtext neither work. once you add the text attribute inside the block it dissapears.
attdef or mirrtext neither work. once you add the text attribute inside the block it dissapears.
you need to first sync attribute with attsync and it will appear. However my attribute still got mirrored
you need to first sync attribute with attsync and it will appear. However my attribute still got mirrored
I found out that if you have a block with text in it and you add a dynamic flip inside your block and you select all your objects including texts and dimensions : then the text will stay readable after the flip.
I hope this can be useful to someone.
I found out that if you have a block with text in it and you add a dynamic flip inside your block and you select all your objects including texts and dimensions : then the text will stay readable after the flip.
I hope this can be useful to someone.
Merhaba VBA ile bulduğum çözüm.
Option Explicit
Sub TextInsideMirroredBlock()
' Biolight 2024 - Eppur Si Muove - biolightant@gmail.com
'
' Block içinde yazı varsa (Text, Dimension a bağlı text)
' MIRRTEXT = 0 olmasına rağmen
' Block Mirror (aynalama) yapılınca yazılar TERSTEN gözükür
' Bu hatayı gidermek için bir çözüm üretir
'
Dim objEnt As AcadObject
Dim emptyPt(0 To 2) As Double
Dim point1, point2 As Variant
On Error Resume Next
TekrarSec:
ThisDrawing.Utility.GetEntity objEnt, emptyPt, "Düzenlenecek Block seçiniz: "
If Err <> 0 Then
' esc, space veya enter tıklanırsa sonlandır
If CInt(ThisDrawing.GetVariable("ERRNO")) = 52 Then
ThisDrawing.SendCommand Chr(3)
Err.Clear
Exit Sub
Else
ThisDrawing.Utility.Prompt "Block değil...!" & vbCrLf
Err.Clear
GoTo TekrarSec
End If
End If
If objEnt.ObjectName = "AcDbBlockReference" Then
' MIRRTEXT değişkenini 0 olarak ayarla
ThisDrawing.SetVariable "MIRRTEXT", 0
' Block un kapladığı alan koordinatları
objEnt.GetBoundingBox point1, point2
objEnt.Explode ' Blok u patlat ( MIRRTEXT=0 dan dolayı yazılar düzeldi ama block parçalandı )
objEnt.Delete ' Mevcut bloğu sil
' Group u oluşturacak objeler : Patlatılan block un kapladığı alan koordinatları için de
' Crossing ile bu alanı belirle ve objeleri seç ( x.x,y.y,z.z )
ThisDrawing.SendCommand "GROUP CROSSING" & vbCr & _
Replace(point1(0), ",", ".") & "," & Replace(point1(1), ",", ".") & ",0.0" & vbCr & _
Replace(point2(0), ",", ".") & "," & Replace(point2(1), ",", ".") & ",0.0" & vbCr & vbCr
ThisDrawing.Utility.Prompt "Yeni bir " ' TekrarSec ile "Yeni bir Düzenlenecek Block seçiniz: " gözükecek
Else
ThisDrawing.Utility.Prompt "Block değil...!" & vbCrLf
Err.Clear
GoTo TekrarSec
End If
GoTo TekrarSec
End Sub
Merhaba VBA ile bulduğum çözüm.
Option Explicit
Sub TextInsideMirroredBlock()
' Biolight 2024 - Eppur Si Muove - biolightant@gmail.com
'
' Block içinde yazı varsa (Text, Dimension a bağlı text)
' MIRRTEXT = 0 olmasına rağmen
' Block Mirror (aynalama) yapılınca yazılar TERSTEN gözükür
' Bu hatayı gidermek için bir çözüm üretir
'
Dim objEnt As AcadObject
Dim emptyPt(0 To 2) As Double
Dim point1, point2 As Variant
On Error Resume Next
TekrarSec:
ThisDrawing.Utility.GetEntity objEnt, emptyPt, "Düzenlenecek Block seçiniz: "
If Err <> 0 Then
' esc, space veya enter tıklanırsa sonlandır
If CInt(ThisDrawing.GetVariable("ERRNO")) = 52 Then
ThisDrawing.SendCommand Chr(3)
Err.Clear
Exit Sub
Else
ThisDrawing.Utility.Prompt "Block değil...!" & vbCrLf
Err.Clear
GoTo TekrarSec
End If
End If
If objEnt.ObjectName = "AcDbBlockReference" Then
' MIRRTEXT değişkenini 0 olarak ayarla
ThisDrawing.SetVariable "MIRRTEXT", 0
' Block un kapladığı alan koordinatları
objEnt.GetBoundingBox point1, point2
objEnt.Explode ' Blok u patlat ( MIRRTEXT=0 dan dolayı yazılar düzeldi ama block parçalandı )
objEnt.Delete ' Mevcut bloğu sil
' Group u oluşturacak objeler : Patlatılan block un kapladığı alan koordinatları için de
' Crossing ile bu alanı belirle ve objeleri seç ( x.x,y.y,z.z )
ThisDrawing.SendCommand "GROUP CROSSING" & vbCr & _
Replace(point1(0), ",", ".") & "," & Replace(point1(1), ",", ".") & ",0.0" & vbCr & _
Replace(point2(0), ",", ".") & "," & Replace(point2(1), ",", ".") & ",0.0" & vbCr & vbCr
ThisDrawing.Utility.Prompt "Yeni bir " ' TekrarSec ile "Yeni bir Düzenlenecek Block seçiniz: " gözükecek
Else
ThisDrawing.Utility.Prompt "Block değil...!" & vbCrLf
Err.Clear
GoTo TekrarSec
End If
GoTo TekrarSec
End Sub
Can't find what you're looking for? Ask the community or share your knowledge.