I am using angular's ng-bind-html to bind this text to page:
Ale
skoro nikdy sa nepozeráme na priemerné produkty s údivom, že nie sú skvelé.
Priemerné služby a produkty robia to, čo sa od nich očakáva. Nastavili ale
latku tak nízko, že skoro ani nemá cenu urobiť kvôli ním pár krokov navyše, aby
ste si ich kúpili.<div><br></div><div><br></div><div>Prečo
nie je každé jedlo v reštaurácii skvelou kúpou za svoju cenu? Vyzerá to, ako by
sme ochotne brali všetko viac menej zlé za prijateľné, s výnimkou prípadov, keď
daný produkt, služba alebo firma nestoja úplne za nič.</div><div><br></div><div><br></div><div>Vyzvite priemernosť vo
vašej firme na súboj. Pretože presne takýto pohľad priemernosti na vás, môžu
mať aj vaši zákazníci.</div>
so you can see it contains various html markups encoded characters.
ng-data-bind handles this very correctly so the text is readable on the page.
However when I use $sanitize for this text to filter the html characters out, I'm getting this:
Ale
skoro nikdy sa nepozeráme na priemerné produkty s údivom, že nie sú skvelé.
Priemerné služby a produkty robia to, čo sa od nich očakáva. Nastavili ale
latku tak nízko, že skoro ani nemá cenu urobiť kvôli ním pár krokov navyše, aby
ste si ich kúpili.<div><br></div><div><br></div><div>Prečo
nie je každé jedlo v reštaurácii skvelou kúpou za svoju cenu? Vyzerá to, ako by
sme ochotne brali všetko viac menej zlé za prijateľné, s výnimkou prípadov, keď
daný produkt, služba alebo firma nestoja úplne za nič.</div><div><br></div><div><br></div><div>Vyzvite priemernosť vo
vašej firme na súboj. Pretože presne takýto pohľad priemernosti na vás, môžu
mať aj vaši zákazníci.</div>
so how can I mimic ng-bind-html inside my controller to clear the text and use it further?
EDIT: to me more clear, I don't need to bind this text to the view. This already works. I need to work with the text in controller's logic so I just need to clean it and use it further.
$sce.trustAsHtml() should be used.
HTML:
<td ng-bind-html="mData.data | unsafe"></td>
JS:
mOverview.controller('appController', function ($scope, $sce) {
$scope.mData = [
{
'data': 'your data'
}
];
});
mOverview.filter('unsafeFilter', function($sce) {
return function(val) {
return $sce.trustAsHtml(val);
};
});
Related
I've noticed 2 cases in which Microsoft Translator Text should raise errors when using custom engines, but instead has an unexpected behavior.
Normal Case
I send a request with the method POST.
URL = https://api.cognitive.microsofttranslator.com/translate
parameters :
- api-version=3.0
- textType=plain
- category=my_engine_id
- from=de
- to=en
Headers={"Ocp-Apim-Subscription-Key": my_key,'Content-type': 'application/json'}
Body (JSON format) :
[{"Text": "Klicken Sie in jedem Bildschirm auf das Textbeispiel, das am besten lesbar ist."},
{"Text": "Verschiedene Themen aus den Bereichen Wortschatz, Satzbau, Kohärenz, Textwiedergabe,
Kommasetzung und Orthographie werden anhand von Textbeispielen und Übungen vorgestellt."},
{"Text": "„Auch wenn zwei Staaten in Deutschland existieren, sind sie doch füreinander nicht Ausland; ihre Beziehungen zueinander können nur von besonderer Art sein.“"},
{"Text": "Mit dieser Formel bricht der neue Kanzler ein jahrzehntelanges Tabu."},
{"Text": "Bislang wird der östliche Teil Deutschlands von den bundesdeutschen Politikern als SBZ, Zone oder „sogenannte DDR“ bezeichnet."}]
The response is as expected:
[{"translations":
[{"text": "On each screen, click on the text sample that is most readable.",
"to": "en"}]},
{"translations":
[{"text": "Various topics from the fields of vocabulary, typesetting, coherence, text reproduction, comma setting and orthography are presented using text examples and exercises.",
"to": "en"}]},
etc.
Case 1
I change the parameter to=fr in the URL (instead of "en").
The response shows that the text has been translated into french, although the custom engine is only trained from DE>EN (therefore I think a generic engine was used instead, but there is no info in the HTTP response) !
[{"translations":[{"text":"Sur chaque écran, cliquez sur l’échantillon de texte le plus lisible.","to":"fr"}]},{"translations":[{"text":"Divers sujets des domaines du vocabulaire, du typage, de la cohérence, de la reproduction du texte, du décor de virgule et de l’orthographe sont présentés à l’aide d’exemples de textes et d’exercices.","to":"fr"}]},{"translations":[{"text":"\"Même si deux États existent en Allemagne, ils ne sont pas étrangers l’un à l’autre; Leurs relations les uns avec les autres ne peuvent être que d’un genre particulier.","to":"fr"}]},{"translations":[{"text":"Avec cette formule, le nouveau chancelier brise un tabou de dix ans.","to":"fr"}]},{"translations":[{"text":"Jusqu’à présent, la partie orientale de l’Allemagne est appelée par les politiciens fédéraux allemands SBZ, zone ou « soi-disant DDR ».","to":"fr"}]}]
Instead of this behaviour, I would have expected an error in the HTTP response :
400075 The language pair and category combination is not valid.
Case 2
I change the parameter from=da in the URL (instead of "de").
The response shows that the translation is simply a copy of the source text, although it indicates that it was translated into "en" !
[{"translations":[{"text":"Klicken Sie in jedem Bildschirm auf das Textbeispiel, das am besten lesbar ist.","to":"en"}]},{"translations":[{"text":"Verschiedene Themen aus den Bereichen Wortschatz, Satzbau, Kohärenz, Textwiedergabe, Kommasetzung und Orthographie werden anhand von Textbeispielen und Übungen vorgestellt.","to":"en"}]},{"translations":[{"text":"\"Auch wenn zwei Staaten in Deutschland existieren, sind sie doch füreinander nicht Ausland; ihre Beziehungen zueinander können nur von besonderer Art sein.\"","to":"en"}]},{"translations":[{"text":"Mit dieser Formula bricht der neue Kanzler ein jahrzehntelanges Tabu.","to":"en"}]},{"translations":[{"text":"Bislang wird der östliche Teil Deutschlands von den bundesdeutschen Politikern als SBZ, Zone oder \"sogenannte DDR\" bezeichnet.","to":"en"}]}]
Same as for Case 1, instead of this behaviour, I would have expected an error in the HTTP response :
400075 The language pair and category combination is not valid.
Is it normal that I don't get an error for these 2 cases ? Has anybody else encountered this behavior before ?
Actually I would like to either use these error codes, or else check before sending the translation request that the language pair corresponds to the custom engine, do you know of some way to do it ?
For case1, translation is done in two hops - de>en, en>fr. The custom engine is used for the first hop, and our general model is used for the second. If you want the translation to fail in this case instead, you can set the parameter allowFallback to false
allowFallback Optional parameter.
Specifies that the service is allowed to fallback to a general system when a custom system does not exist. Possible values are: true (default) or false.
docs
In the second case, the request contains German text but is labeled as Danish. There is nothing we can do here except return the input. If you want the api to detect the from language, omit it from the parameters and the api will run auto-detect on the text.
If the from parameter is not specified, automatic language detection is applied to determine the source language.
This question already has answers here:
How to wrap text inside to different paragraphs around image inside the first paragraph (<p> tag). (Content is inputted using CKeditor Plugin)
(5 answers)
Closed 4 years ago.
I am using CKeditor to input RichText.
Inside the text area of CKEditor, the text is perfectly wrapped over the image.
But the text is not wraping on the html page.
This is how it looks in CKeditor
But my html looks like this.
What may be I am missing here. ?
Here is the actual code snippet
<p>Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups under
<img alt="" src="/media/uploads/2018/09/27/sufs5o_fWCbPPM.jpg" style="float:right; height:1080px; width:420px">
Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. .
</p>
<p>s settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.Enter each item on a new line, choose the amount of groups unders settings, and click the button to generate your randomized list. Don't like the first team? Just click again until you do.Fairly pick teams without bias. No need to draw names out of a hat. No need to do a grade school style draft or put hours of thought into the most balanced teams. The most fair dividing method possible is random.</p>
<img align="right" hspace="3px" vspace="3px" alt="" src="/media/uploads/2018/09/27/sufs5o_fWCbPPM.jpg" style="height:1080px; width:420px">
Try this on
.floatright {
float: right;
clear: right;
position: relative;
margin: 0 0 0.5em 0.5em;
}
<div style="text-align:justify;margin:6px">
<img src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c7/Mandala1_detail.jpg/150px-Mandala1_detail.jpg" width="150" height="173"
class="floatright"
>
<p>
El arte budista tiene su origen en el subcontinente indio (actuales India, Bangladés, Nepal y Pakistán) en los siglos posteriores a la vida de Siddhartha Gautama, el Buda histórico, entre los siglos vi y v a. C. Más tarde, gracias al contacto con otras culturas, logró evolucionar y difundirse por el resto de Asia y el mundo.
Una primera etapa, llamada preicónica, se sitúa antes del siglo i d. C. y se caracteriza por no recurrir a representaciones directas de Siddhartha Gautama como el Buda Śākyamuni o de los budas míticos que se suponen existieron en eras pasadas. La etapa siguiente, icónica, tiene por el contrario a la imagen humana del Buda y los budas del pasado, del futuro y de otros universos como símbolo central de sus obras de arte.
Desde entonces, el arte budista se diversificó y evolucionó para adaptarse a las nuevas regiones en las que comenzaba a sumar adeptos. Se expandió hacia el este y el norte a través de Asia Central, para formar lo que luego fue clasificado como arte budista del norte —en contraposición al arte budista del sur, que surgiría en el sudeste de Asia. En India, el arte budista floreció e incluso llegó a influir en el desarrollo del arte hindú, hasta que el budismo casi desapareció alrededor del siglo x, con la expansión del hinduismo y el islam.
</p>
<p>
El arte budista tiene su origen en el subcontinente indio (actuales India, Bangladés, Nepal y Pakistán) en los siglos posteriores a la vida de Siddhartha Gautama, el Buda histórico, entre los siglos vi y v a. C. Más tarde, gracias al contacto con otras culturas, logró evolucionar y difundirse por el resto de Asia y el mundo.
Una primera etapa, llamada preicónica, se sitúa antes del siglo i d. C. y se caracteriza por no recurrir a representaciones directas de Siddhartha Gautama como el Buda Śākyamuni o de los budas míticos que se suponen existieron en eras pasadas. La etapa siguiente, icónica, tiene por el contrario a la imagen humana del Buda y los budas del pasado, del futuro y de otros universos como símbolo central de sus obras de arte.
Desde entonces, el arte budista se diversificó y evolucionó para adaptarse a las nuevas regiones en las que comenzaba a sumar adeptos. Se expandió hacia el este y el norte a través de Asia Central, para formar lo que luego fue clasificado como arte budista del norte —en contraposición al arte budista del sur, que surgiría en el sudeste de Asia. En India, el arte budista floreció e incluso llegó a influir en el desarrollo del arte hindú, hasta que el budismo casi desapareció alrededor del siglo x, con la expansión del hinduismo y el islam.
</p>
</div>
I have a request in my web api that give me a Json like this
{
"$id": "1",
"ID": 9710,
"post_author": 2,
"post_date": "31/08/2017",
"post_content": "Assim como aconteceu no primeiro Destiny, a <strong>Bungie</strong> e a <strong>Activision</strong> lançaram nesta quinta-feira (31) um trailer live action de <strong>Destiny 2</strong>, com direito a <strong>Cayde-6</strong> fazendo um discurso motivacional, lembrando que todas as coisas que você ama na Terra se foram (inclusive os cachorrinhos).<br><br><div class=\"video\"><iframe src='https://www.youtube.com/embed/UhE6B3MPsUM'></iframe></div><br><br>O trailer por <strong>Jordan Vogt-Roberts</strong> mais conhecido pelo seu trabalho em <strong>Kong: A ilha da Caveira</strong>.<br><br>A nossa aventura em Destiny 2 começa com os <strong>Guardiões</strong> buscando vingança após ter a última cidade segura na Terra destruída pela Legião Vermelha, liderada pelo poderoso <strong>Ghaul</strong>. Com isso, será necessário que exploremos novos mundos do sistema solar, em busca de armas e habilidades para vencer essa guerra e recuperar a nossa luz.<br><br><strong>Destiny 2</strong> será lançado em 6 de setembro pra <strong>Xbox One </strong>e <strong>PS4</strong>. No PC o jogo será lançado um mês depois no dia 24 de outubro.<br><br><strong>Saiba mais sobre Destiny 2</strong>",
"post_title": "Destiny 2 ganha trailer live action ao som Sabotage",
"post_name": "destiny-2-ganha-trailer-live-action-ao-som-sabotage",
"guid": "http://nextseason.com.br/?p=9710",
"meta_value": 9711,
"id_post_img": 9711,
"link_imagem": "http://nextseason.com.br/wp-content/uploads/live-action-destiny-2.jpg",
"id_post_categoria": 9710,
"category": "Games"
}
and in app using Ionic 2 i put the code
<div [innerHtml]="post.post_content"> </div>
where post.post_content is the post_content from my request.
inside the post_content has an with a embed youtube video, but when i run the, the video does not show. In debug appears like that.
<div>Assim como aconteceu no primeiro Destiny, a
<strong>Bungie</strong> e a <strong>Activision</strong>
lançaram nesta quinta-feira (31) um trailer live action de <strong>Destiny
2</strong>, com direito a <strong>Cayde-6</strong> fazendo um discurso
motivacional, lembrando que todas as coisas que você ama na Terra se foram
(inclusive os cachorrinhos).<br><br><div class="video"></div><br><br>O
trailer por <strong>Jordan Vogt-Roberts</strong>
the div element always shows empty. Someone can help me? have any idea why this occurs?
Sorry my english!
I am making a XSL (to be converted to HTML) file from XML and i want to insert an image. My problem is that the link of the image is in the XML. I want the image from "caixa id="102"". How can i do it?
XML:
<loja xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="trabalhoXSD.xsd">
<componentesDisponiveis>
<caixa id="101">
<preco>23.90</preco>
<imagem>https://www.pcdiga.com/bizizi/img_upload/produtos_1/18677_1_gx.jpg?d=1443548409</imagem>
<descricao>A Nox introduz a Kore: uma solução com amplas possibilidades num formato semi-tower. A sua versatilidade converte-a numa opção perfeita para aqueles que
necessitam de uma caixa para hardware de alto desempenho, num formato mais compacto.
O design em preto com linhas angulares fornecem-lhe um aspecto implacável, juntamente com o efeito de alumínio escovado do painel frontal.</descricao>
<HDD>5</HDD>
<SDD>1</SDD>
<leitorDiscosOpticos>0</leitorDiscosOpticos>
</caixa>
<caixa id="102">
<preco>124.89</preco>
<imagem>https://www.pcdiga.com/bizizi/img_upload/produtos_1/8502_1_gx.png?d=1348685644</imagem>
<descricao>Quando você precisar de sair e levar seu jogo, a caixa Vengeance C70 é a opção perfeita. Ela é esculpida em aço sólido e feito para sobreviver a viagens com
menos desgaste, e as alças para transporte ergonómico acrescentam confiança ao transporte.</descricao>
<HDD>8</HDD>
<SDD>1</SDD>
<leitorDiscosOpticos>0</leitorDiscosOpticos>
</caixa></componentesDisponiveis></loja>
Image sources, like other HTML attributes, need to be added using the <xsl:attribute> tag.
<img>
<xsl:attribute name="src">
<xsl:value-of select="componentesDisponiveis/caixa[#id = '102']/imagem"/>
</xsl:attribute>
</img>
As you can see to get the specific Id you just add it between square brackets as a condition.
A client has asked me to add some polish text to their website, not having much experience in this area, can anyone tell me which of the two 'lang' solutions below is correct (or offer an alternative):-
Tag everything:-
<div lang="pl">
<h2 lang="pl">Najlepszy ruch jaki zrobisz!</h2>
<p lang="pl">Do przyszłych najemców:</p>
<p lang="pl">Tutaj w SPS mamy bogate doświadczenie na rynku najmu i wyszukiwaniu domu, który będzie idealnym miejscem dla przyszłych lokatorów. Dla wielu może to być trudne i stresujące, dlatego my w SPS pomożemy Wam przejść przez pole minowe związane z najmem i uczynić ten proces najprostszym i najszybszym jak to możliwe.</p>
<p lang="pl">Jeśli szukasz nieruchomości obecnie lub w najbliższej przyszłości prosimy o kontakt z naszym doświadczonym , przyjaznym i pomocnym personelem, a my postaramy się pomóc znaleźć Ci idealne miejsce, które jest właśnie dla Ciebie.</p>
<p lang="pl">Więc aby w łatwy sposób wynająć zadzwoń już dziś.</p>
</div>
Just tag the div
<div lang="pl">
<h2>Najlepszy ruch jaki zrobisz!</h2>
<p>Do przyszłych najemców:</p>
<p>Tutaj w SPS mamy bogate doświadczenie na rynku najmu i wyszukiwaniu domu, który będzie idealnym miejscem dla przyszłych lokatorów. Dla wielu może to być trudne i stresujące, dlatego my w SPS pomożemy Wam przejść przez pole minowe związane z najmem i uczynić ten proces najprostszym i najszybszym jak to możliwe.</p>
<p>Jeśli szukasz nieruchomości obecnie lub w najbliższej przyszłości prosimy o kontakt z naszym doświadczonym , przyjaznym i pomocnym personelem, a my postaramy się pomóc znaleźć Ci idealne miejsce, które jest właśnie dla Ciebie.</p>
<p>Więc aby w łatwy sposób wynająć zadzwoń już dziś.</p>
</div>
The latter. You only need to indicate changes in language.
Otherwise you would end up with:
<html lang="en-us">
<head lang="en-us">
<title lang="en-us"> A document written in American English </title>
…